javascript - rails 4.1.1 : JS file in lib/assets/javascripts doesn't load

标签 javascript ruby-on-rails

我有一个小的 JS 文件 (common.js),其中包含一个函数。我在 application.js 中有以下几行:

//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require jquery.readyselector
//= require common
//= require_tree .

当我将其存储在

app/assets/javascripts

vendor/assets/javascripts

文件已正确加载,但是当我将其移动到时

lib/assets/javascripts

它停止工作,我收到错误:

Sprockets::FileNotFound
couldn't find file 'common'
(in C:/Sites/rails_studio/beatjoe/app/assets/javascripts/application.js:21)

尽管我的 Rails.application.config.assets.paths 是:

- C:/Sites/rails_studio/myappname/app/assets/images
- C:/Sites/rails_studio/myappname/app/assets/javascripts
- C:/Sites/rails_studio/myappname/app/assets/stylesheets
- C:/Sites/rails_studio/myappname/lib/assets/javascripts
- C:/Sites/rails_studio/myappname/vendor/assets/fonts
- C:/Sites/rails_studio/myappname/vendor/assets/images
- C:/Sites/rails_studio/myappname/vendor/assets/javascripts
- C:/Sites/rails_studio/myappname/vendor/assets/stylesheets
- C:/RailsInstaller/Ruby2.0.0/lib/ruby/gems/2.0.0/gems/turbolinks-2.3.0/lib/assets/javascripts
- C:/RailsInstaller/Ruby2.0.0/lib/ruby/gems/2.0.0/gems/jquery-rails-3.1.2/vendor/assets/javascripts
- C:/RailsInstaller/Ruby2.0.0/lib/ruby/gems/2.0.0/gems/coffee-rails-4.0.1/lib/assets/javascripts

根据文档,不仅应该包含 common.js,因为

//= require common

但也被捕获

//= require_tree .

我错过了什么?

最佳答案

当本地服务器运行时,我能够通过创建 lib/assets/javascript 目录来重现 Sprockets::FileNotFound 错误 。看来您需要重新启动服务器才能获取目录更改。

现在您的服务器已重新启动,您应该能够将文件添加到目录中,而无需重新启动服务器。

关于javascript - rails 4.1.1 : JS file in lib/assets/javascripts doesn't load,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28644840/

相关文章:

javascript - vuejs全局注册组件

ruby-on-rails - bundle 安装卡住我的 Rails 应用程序

javascript - 如何在 Rails 中处理特定于环境的 javascript 文件?

javascript - 如何更改输入的字体?

c# - 使用 ajax 请求获取可下载文件

ruby-on-rails - cucumber 中的click_link图像

ruby-on-rails - ruby sftp 错误

javascript - Rails - 单击事件 - 如何处理 2 个 Ruby 方法之间的竞争条件?

javascript - 通过启用特定选项卡直接加载网页

javascript - 如果使用 jquery 选择其中两个复选框,则禁用其他复选框