首页 > 解决方案 > 只需在 Rails 6 的 erb 文件中使用我自己的自定义 javascript

问题描述

我一直在谷歌上搜索并将我的头撞到墙上 2 天,现在我终于只需要问你们了。

我想简单地在 Rails 6 中创建一个 Javascript 文件,然后在 erb 文件中的按钮上调用该函数。

而已。

为什么这不是世界上最简单的事情?

在意识到我从互联网上获得了两组不同的指令,一组用于 rails 5 和以前的指令,另一组用于 rails 6,我尝试专门寻找 Rails 6 的答案。对于这样一个简单的问题,它们仍然过于复杂,并且通常是关于引入外部库。我不想要外部库。我想要我自己的javascript。我想在我的 erb 文件中调用它。

我感谢任何人帮助我解决这个问题。

标签: ruby-on-railsruby-on-rails-6

解决方案


假设您application.js已经在packs目录中,在同一目录中创建一个新文件custom.js,因为您希望它可以在任何地方访问,您需要将它放在window范围内,将其添加到文件中

window.testFun = function(){
  alert('Hello World!');
}

然后require文件在application.js

require("custom")

现在您可以onclick在应用程序的 erb 文件中调用它。

<%= link_to 'Test', '#', onclick: "testFun()" %>

或者

<%= link_to 'Test', "javascript:testFun()" %>

试试看。


推荐阅读