【问题标题】:Rails ActionView::Template::Error (google_analytics.js isn't precompiled)Rails ActionView::Template::Error(google_analytics.js 未预编译)
【发布时间】:2013-05-07 13:42:03
【问题描述】:

我决定在我的模板中使用javascript_inlcude_tag 'google_analytics.js',避免使用许多可以为我完成它的宝石,转而支持测试新的 Google Analytics“通用”功能。

问题是 Google Analytics 提供的代码不在 Coffeescript 中,因此我将其添加到我的 vendor/assets/javascripts 中,就像我在我的应用程序中使用的许多其他库一样。但与其他所有方法不同的是,javascript_include_tag 方法会导致 Rails 因错误而停止:

Rails ActionView::Template::Error (google_analytics.js isn't precompiled)

在我的许多 Coofeescripts 中,其他供应商库只是“必需的”。

有人知道这种当前的分析 javascript 方法有什么问题吗?

【问题讨论】:

    标签: javascript ruby-on-rails assets precompile


    【解决方案1】:

    Dan McClainthis (related) post 中同样建议,通过在config/environments/production.rb 中添加以下行解决了该问题:

    config.assets.precompile += %w( google_analytics.js )
    

    完成!

    【讨论】:

      【解决方案2】:

      之前的评论:

      Google Analytics 提供的代码不在 Coffeescript 中,因此我将其添加到我的 vendor...

      Coffeescript 中的 js 不必通过 application.js 中的直接 //= require google_analytics 包含在您的资产管道中,作为文件 .js.coffee 的扩展名或只是 .js。

      这么说并假设您在生产环境中遇到该错误,似乎您没有将 js 文件添加到资产预编译数组中。在您的 config/environments/production.rb 中需要以下行:

      config.assets.precompile += %w( google_analytics.js )
      

      希望有帮助

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-11-08
        • 1970-01-01
        • 2012-06-19
        • 2012-07-20
        • 2013-07-14
        • 2012-08-06
        • 1970-01-01
        相关资源
        最近更新 更多