javascript - Jammit 如何处理 View 特定的 JavaScript

标签 javascript ruby-on-rails ruby jammit

我正在尝试领养 Jammit在我的 Rails 应用程序中。

文档中提供的默认配置获取所有 js 文件,包括 View 特定的 javascript:

embed_assets: on

javascripts:
  workspace:
    - public/javascripts/vendor/jquery.js
    - public/javascripts/lib/*.js
    - public/javascripts/views/**/*.js
    - app/views/workspace/*.jst

stylesheets:
  common:
    - public/stylesheets/reset.css
    - public/stylesheets/widgets/*.css
  workspace:
    - public/stylesheets/pages/workspace.css
  empty:
    - public/stylesheets/pages/empty.css

让我们考虑一种情况,即 View 特定的 javascript 只应在特定 View 上执行:

$(function(){
  alert("View specific message here!");
}

如何避免这种影响?

问候, 阿列克谢·扎哈罗夫

最佳答案

我的偏好是将“view-specific-javascript”封装在一个函数中。然后根据您实际加载的页面调用该函数。这样,您的所有 JavaScript 都可以作为单个文件被浏览器缓存,您可以执行您需要的 JS 部分。

所以我要添加 <script>标记到特定的 html.erb在页面加载时调用 View 特定函数的模板。

希望对您有所帮助...

关于javascript - Jammit 如何处理 View 特定的 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3521405/

相关文章:

javascript - 精确的对象类型定义和解构

ruby - 具有确切版本的 Gemfile 与 Gemfile.lock

javascript - 如何让 div 弹出 IFRAME 的限制?

ruby-on-rails - 使 diff-lcs 的输出可读

ruby-on-rails - 在 Rails 中检索特定的固定装置

ruby-on-rails - 停止在哈希 Ruby on Rails 中编码的字符串

javascript - 如何通过 Node 网络套接字连接 ruby​​ TCP 服务器?

ruby-on-rails - 未定义方法 `-' 对于 nil :NilClass in ruby model

javascript - Redux 表单字段级验证在 Edge 中不起作用

javascript - 如何在gulp中实现多源中流