【问题标题】:Javascript caching in Rails 4Rails 4 中的 Javascript 缓存
【发布时间】:2015-04-19 13:25:07
【问题描述】:

我正在尝试将实时聊天系统(如 Livezilla)集成到我的 Rails 4 网站中。我需要将以下代码放在每个页面上,就在关闭 <body> 标记之前。

<!-- NETROXSC CODE. Theme No. 1 --><script type="text/javascript" src="http://code.netroxsc.ru/E9DDC181-6448-D1DE-6451-AC0D48A9FB24/c.js?tmpl=1"></script>

所以,我将它放在我的 application.html.erb 中,但它只执行一次 - 当网站加载或刷新任何页面时。

如何防止 Rails 缓存该脚本?我已经出于其他目的安装了 jquery.turbolinks gem,但在这种情况下它不起作用。

谢谢!

【问题讨论】:

  • 您能否提供更多关于您如何使用包含的脚本的信息?重新加载页面时是否需要调用某种初始化函数或 DOM 绑定?还是你只需要包含 javascript 文件就可以了?
  • 此脚本初始化实时聊天窗口。正如我想的那样,它是在该服务的提供者一侧动态生成的。所以,不幸的是,我不认为我可以编写一些 JQuery 函数并将其包含到 application.js 或另一个将由资产管道编译的 js 文件中。

标签: javascript ruby-on-rails caching


【解决方案1】:

如果将 JS 文件放在此位置,则可以包含它:

app/assets/javascripts/home.js

在你的 application.js 文件中包含这一行

//= require home

【讨论】:

  • 此脚本由实时聊天服务提供。我想它是在他们这边动态生成的,并且包括聊天窗口的不同参数,我可以通过他们网站上的网络界面更改这些参数。所以诀窍是让 Rails 准确地执行每个页面上的脚本链接。顺便说一句 - 我尝试将该脚本分别包含在几个模板中,但即使这样也无法正常工作。
猜你喜欢
  • 2013-10-26
  • 2017-11-07
  • 1970-01-01
  • 2014-07-03
  • 1970-01-01
  • 2016-09-01
  • 2013-05-18
  • 2015-01-01
  • 1970-01-01
相关资源
最近更新 更多