如何在Rails 6中执行自定义JavaScript函数

约翰·多纳多·B。

随着Webpacker到达Ruby On Rails,我找不到使用我的JavaScript函数的方法。

我有一个app-globals.js要测试的函数文件

function alerts() {
  alert("TEST")
}

然后,我想在其中一种视图中使用它:

<% = button_tag 'Button', type: 'button', onClick: 'alerts ()'%>

但是当我按下按钮时,该错误显示在浏览器控制台中:

ReferenceError: alerts is not defined

  1. 我将app-globals.js文件放在其中"app/javascript"并在其中"app/ javascript/packs/application.js"放置了require(“ app-globals”)。

  2. 我将app-globals.js移至,"app/javascript/packs"并从中删除了require(“ app-globals”)application.js

无论哪种情况,仍然会出现错误。

code_aks

不过,有一种解决方法。您可以:

从以下位置更改功能签名:

function myFunction() { ... }

至:

window.myFunction = function() { ... }

因此,在您的代码中,我们可以执行以下操作:

app/javascript/packs/app-globals.js

window.alerts = function() {
    alert ("TEST");
}

然后要求这个文件到application.js:-

app/javascript/packs/application.js

require("@rails/ujs").start()
require("turbolinks").start()

require("@rails/activestorage").start()
require("channels")
require("jquery")

import $ from 'jquery'
window.jQuery = $;
window.$ = $;


require("packs/app-globals") ## require your file

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在JavaScript中向自定义构造函数添加自定义方法?

您如何在 JavaScript (ES6) 类上执行自定义事件?

如何在Rails中定义自定义配置变量

如何在sqlalchemy模型中添加自定义函数/方法来执行CRUD操作?

如何在执行 is_ajax_request 函数时在 CODEIGNITER 中自定义 404 页面

如何在Rails 6中要求自定义JS文件

如何在Rails 6中包含自定义JS(特别是AOS.js)

如何在Rails中自定义布尔变量

如何在rails中自定义状态嵌入json?

如何在 Maple 中定义自定义函数?

如何在Spring MVC中执行自定义验证?

如何自定义内置的javascript函数?

如何在使用Laravel 6中导入自定义javascript和CSS文件

如何在 Shopware 6 中创建可在我的 Twig 文件中使用的自定义 Javascript?

如何在 javascript 中函数引用的 console.log 上记录自定义消息

如何在 Visual Studio 代码 javascript 片段中创建自定义函数片段?

如何在自定义损失函数中遍历张量?

如何在自定义树枝函数中呈现内容?

如何在自定义bash函数中“查找-exec”?

如何在自定义函数中模拟Axios?

如何在keras中测试自定义损失函数?

如何在 React 函数中调用自定义 Hook

如何在聚合函数中应用自定义逻辑

如何在OxyPlot中绘制自定义函数图?

如何在Tensorflow中编写自定义损失函数?

如何在PlayWright中运行自定义js函数

如何在Haskell中编写自定义的show函数

如何在simulink中创建自定义s函数?

我如何在自定义函数中到达 indexPath?