我想在JS文件中声明一个方法,并在.html.erb中使用它,如下所示
const getSetHtml = () => {
console.log("Hello World");
}在.html.erb视图中,如下代码所示
onclick="getSetHtml()"但它显示了
未定义ReferenceError: getSetHtml未定义
我导入了如下文件
// /app/javascript/application.js
import "@hotwired/turbo-rails";
import "controllers";
import "trix";
import "@rails/actiontext";
import "trix";
import "@rails/actiontext";
import "./bootstrap.bundle.min";
import "./editor"; // this file注意:其他JS库运行良好,但自定义方法不起作用。
谢谢
发布于 2022-06-01 16:10:19
为什么要用const设置函数?如果它符合您的具体用例,酷!否则,我个人只需要定期地定义它,无论哪种方式,这里都是您想要做的事情的语法。
const getSetHtml = function() {console.log("Hello World")};当前函数返回函数本身,而不是返回函数的返回值( console.log("Hello“))。
我不能完全确定,但我相信在您的application.js中,您只需像这样导入文件,我将首先尝试另一种方法:import "editor";
我希望这能帮上忙,祝你好运。告诉我是怎么回事!
发布于 2022-06-01 16:16:05
您可以通过将函数添加到global对象来公开它。
global.getSetHtml = () => {
console.log("Hello World");
}https://stackoverflow.com/questions/72459835
复制相似问题