0

我正在使用 Rails 4.0.0 和 Ruby 2.0.0 创建我的 Rails 3.2.13 应用程序的新版本。我使用最新版本的 Michael Hartl 的Ruby On Rails 教程作为指南。我不熟悉一些正在使用的 gem,例如 Turbolinks。

我有几个网站在视图和 application.html.erb 中都有 JavaScript。有时在第一次显示视图时脚本会起作用。其他时候页面将显示而没有执行任何脚本。发生这种情况时,我刷新页面并且所有脚本都可以工作。天气频道的“新”Twitter 小部件和小部件也会不时发生这种情况。

这是我在 application.html.erb 中的内容:

<%= stylesheet_link_tag    "application", media: "all",
                                            "data-turbolinks-track" => true %>
<%= javascript_include_tag "application", "data-turbolinks-track" => true %>

在我的观点中,我没有更改任何其他代码。当我运行 Rails 3 版本时,我的脚本在最初显示视图时执行。但是,当我运行 Rails 4 版本时,我必须在大多数页面执行之前使用脚本刷新它们。

任何帮助,将不胜感激。

4

1 回答 1

0

我一直在网上寻找这个问题的答案,但在我发布这个问题之前,我决定再次检查。我终于找到了一篇帖子,上面说有时使用 Turbolinks 和 JavaScript 似乎存在冲突。建议的解决方案是在 application.js 中不需要 turbolinks。

//= require turbolinks

当我从 application.js 中删除该语句时,我的脚本就像在我的应用程序的 Rails 3 版本中一样工作。

于 2013-08-28T22:01:17.917 回答