我在这里看过几个关于这个问题的帖子,以及博客文章。 到目前为止,他们都没有帮助过我,例如: Same rails and turbolink version
以下是js的示例,如果没有刷新页面,则无法加载:
document.addEventListener('turbolinks:load', function() {
document.getElementById(id[0]).oninput=function () {
validate(id[0]);
}
});
没有Turbolinks,Javascript运行正常,删除Turbolinks不适合我。
注意:如果我需要来自application.html.erb
的特定JS文件,它会工作,但它会运行网站上所有页面上的每个文件,而JS必须是特定于页面的。
答案 0 :(得分:0)
你应该将这个用于turbolinks。
$(document).on('page:load', ready);
但这非常糟糕,因为在某些页面上你想要使用turbolinks,而另一些你不想要。很快你就会通过文件准备就绪初始化脚本(因为你不能等待页面加载),以及其他通过页面:加载。所以最好只是防止这种“意外行为”:
= link_to "Page", some_path(@page), data: { turbolinks: 'false' }