为什么Rails不承认相对的JavaScript文件?

时间:2016-02-23 21:41:19

标签: javascript jquery ruby-on-rails

应用程序/资产/ Javascript角/ application.js中:

//= require jquery
//= require jquery_ujs
//= require_tree .
//= require bootstrap.min

应用程序/资产/ Javascript角/ economy.js:

$(document).ready(function() {
  console.log("loaded file");
});

应用程序/视图/经济/ index.html.erb:

<%= javascript_include_tag "economy" %>

应用程序/配置/初始化/ assets.rb:

Rails.application.config.assets.version = '1.0'
Rails.application.config.assets.precompile += %w( economy.js )

为什么在我的应用中的某个页面加载时,economic.js不会向控制台打印任何内容?

我尝试添加//= require economy.js,但这并没有改变任何内容,如果我了解require_tree的工作原理,那么应该是多余的。

2 个答案:

答案 0 :(得分:0)

你应该自动包含它。

根据这一详细程度,唯一跳出来的是,你有//= require bootstrap.minrequire永远不应该有文件扩展名。它可能会破坏所有要求。将其更改为//= require bootstrap或为了测试economy.js现在加载或完全删除它。

如果这不起作用,可以尝试以下几点:

  1. 如果您的浏览器控制台出现问题,请尝试alert("loaded file");
  2. 尝试添加//= require economy而不使用.js
  3. 检查浏览器的来源以查看文件是否已加载以缩小问题范围。
  4. 此外,请不要忘记在$(document).ready结束时使用;关闭})来电。

答案 1 :(得分:0)

我找到了答案。我的app / assets / javascripts文件夹有一个名为economic.coffee的文件(出于某种原因?!),而我所要做的就是删除它。我认为它覆盖了我的js文件或其他东西。