Ruby on Rails - 未捕获的 ReferenceError:$ 未定义
Posted
技术标签:
【中文标题】Ruby on Rails - 未捕获的 ReferenceError:$ 未定义【英文标题】:Ruby on Rails - Uncaught ReferenceError: $ is not defined 【发布时间】:2013-09-30 23:33:58 【问题描述】:我使用的是 Rails 3.2.13,我从 git repo 克隆了一个项目。 CSS 样式运行良好。但是整个 javascript 插件都没有加载。在控制台中,我收到一些 Javascript 错误,如下所示,
Uncaught SyntaxError: Unexpected token ILLEGAL
Uncaught ReferenceError: $ is not defined
Uncaught ReferenceError: $ is not defined
Uncaught ReferenceError: jQuery is not defined
在 application.js 中,
//= require jquery
//= require jquery_ujs
//= require_tree .
即使在预编译后也无法正常工作。 请帮我解决这个问题。
【问题讨论】:
你包括jQuery吗? 是的......此外,它是我克隆的工作项目。只有在我的本地系统中它不起作用。在 gem 列表中,我找到了 jquery-rails (3.0.4, 1.0.19) 通常,此错误消息表示您的项目中没有包含 jQuery 对不起...我没听懂你。请简要告诉我。 可能这不是 jquery 问题。第一个错误Uncaught SyntaxError: Unexpected token ILLEGAL
阻止加载jquery,因此下一个错误是第一个错误的结果。你能识别出第一个错误引用的代码部分吗?
【参考方案1】:
更新:在我的一台机器上遇到了这个问题。
不确定问题的确切根本原因是什么,但这是解决此问题的一种方法。
请确保已安装以下 gem。
gem 安装链轮
运行以下命令
rake 资产:预编译
要了解有关资产管道的更多信息,请参阅http://asciicasts.com/episodes/279-understanding-the-asset-pipeline
希望这会有所帮助。
【讨论】:
您好,请尝试让我知道结果。 嗨,我已经通过在环境文件中添加 config.assets.debug = true 解决了这个问题。谢谢你的回答。 @ShruthiRamesh 它必须是development.rb
@ShruthiR 这对我有用,但很高兴知道为什么。细节赞赏。【参考方案2】:
在我的 mac 上升级到 mavericks 后,我在 rails 3.2.1 遇到了这个确切的问题。经过研究,我将 rails 更新到 3.2.18 解决了这个问题。显然,某些版本的 sprockets 在资产管道方面存在问题。在https://github.com/sstephenson/sprockets/issues/352查看更多信息
【讨论】:
以上是关于Ruby on Rails - 未捕获的 ReferenceError:$ 未定义的主要内容,如果未能解决你的问题,请参考以下文章