【问题标题】:Zurb Foundation 5, modernizr not foundZurb Foundation 5,没有找到现代化的
【发布时间】:2013-11-26 18:19:33
【问题描述】:

我在生产模式下使用 Foundation 5.0.2.0 时得到这个。

在 Rails、Unicorn、NginX 和 Ubuntu 上。

"NetworkError: 404 Not Found - http://mydomain.com/javascripts/vendor/modernizr.js"

【问题讨论】:

  • 我认为...nu 是您的混淆域名?

标签: ruby-on-rails http-status-code-404 asset-pipeline zurb-foundation assets


【解决方案1】:

2014 年 3 月 13 日更新

foundation-rails-5.1.1.0 在 heroku 上没有这个问题。在头部添加javascript_include_tag "vendor/modernizr" 有效。我可以删除我复制到供应商目录的modernizr并删除app.js中的额外行


我在 heroku 上遇到了同样的问题,应用程序会因为找不到modernizr.js 而崩溃。这是我修复它的方法:

  • 将modernizr.js 从foundation(无论您使用捆绑程序安装在哪里)复制到vendor/assets/javascripts/
  • 在 application.js 的 //= require_tree . 下方添加 //= require modernizr
  • 从 application.html 中删除 javascript_include_tag "vendor/moderizr"

【讨论】:

  • 这解决了问题,但即使我删除了 javascript_include_tag,错误仍然出现。但是modernizr被激活了。但应该正确解决。但在那之前,这是要走的路。
  • 我想我以这种方式做事遇到了问题,因为foundation-rails当前从正文而不是application.html的头部调用application.js文件,而且我还有其他脚本仅在放在头上,似乎需要现代化。
【解决方案2】:

我遇到了和你一样的错误,我这样做是为了解决它:

config/environments/production.rb 中设置:

# Do not fallback to assets pipeline if a precompiled asset is missed.
config.assets.compile = true

【讨论】:

  • 这行得通,但这是不好的做法。您应该找出为什么资产没有被预编译,如果可能的话,确保它确实被预编译。请参阅我的答案以获取临时解决方案。
【解决方案3】:

尝试更新您用于 Foundation 的 gem。 This commit from five days ago may help you,因为它声称添加了一个缺少的 modernizr.js 文件。

【讨论】:

  • 这确实是问题的一部分。但是,成功更新后,它仍然无法正常工作。我什至将 custom.modernizr.js 文件从 bower_componenets/foundation/js/vendor 目录复制到 rails vendor/assetsjavascripts 目录。还是没有爱。您是否需要做其他事情才能使其正常工作?
  • 我没有试过你的配置。我刚刚在 Foundation 存储库中发现了一个提交,它提出了一个解决方案。
【解决方案4】:

您使用的基础导轨 gem 版本存在问题。事实上,即使是当前可用的最新版本(5.0.3.1)也有这个问题。有一个声称可以解决此问题的拉取请求:https://github.com/zurb/foundation-rails/pull/71 但现在的另一个选择是将您的 gem 更新到 5.0.3.1 并将此行添加到您的 production.rb 文件中:

config.assets.precompile += %w( vendor/modernizr.js )

【讨论】:

    【解决方案5】:

    请按照此处 zurb 的手动说明进行操作:

    http://foundation.zurb.com/docs/applications.html

    其中指定modernizr 脚本包含在head 标记中。我遇到了这个问题,然后使用 layouts/application.rb 中的以下代码修复它:

    %head
    
      %title= title
      = stylesheet_link_tag    "application"
      = javascript_include_tag "vendor/modernizr"
      = csrf_meta_tags
      = favicon_link_tag
      = yield(:head)
    

    【讨论】:

      【解决方案6】:

      我正在使用 foundation-rails (5.2.2.0),我通过添加以下内容解决了它:

      //= 需要modernizr

      下面

      //= 要求树。

      app/assets/javascripts/application.js

      【讨论】:

        猜你喜欢
        • 2014-06-10
        • 2014-01-14
        • 2014-04-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多