在rails 4中加载javascript文件
我的rails资产目录中有一个结构,如下所示在rails 4中加载javascript文件,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,我的rails资产目录中有一个结构,如下所示 --javascripts -utils // directory helper.js session.js app.js application.js home.js 以上是我在rails中的目录结构。当我加载我的应用程序时,我发现下面的错误,我觉得JS没有正确加载 Uncaught TypeError: Cannot read property 'addMethod' of undefined additional-methods.mi
--javascripts
-utils // directory
helper.js
session.js
app.js
application.js
home.js
以上是我在rails中的目录结构。当我加载我的应用程序时,我发现下面的错误,我觉得JS没有正确加载
Uncaught TypeError: Cannot read property 'addMethod' of undefined additional-methods.min.js?body=1:3
Uncaught ReferenceError: Helper is not defined login.js?body=1:22
Uncaught TypeError: Cannot read property 'validate' of undefined
下面是我的application.js
//= require jquery
//= require jquery_ujs
//= require bootstrap
//= require vendor
//= require_tree .
如果我们必须从特定目录加载文件,是否有任何特定的操作?如何从文档中加载Utils
目录和我的application.js中的其他文件:
指令是自上而下处理的,但文件的顺序不同
未指定是否包含在require_树中。你不应该依赖别人
任何一种特殊的顺序。如果你需要确保
特定的JavaScript最终会在连接的
文件,首先需要清单中的先决条件文件
因此,如果需要在home.js
中的任何内容之前定义Utils
中的内容,我会在require\u树上方添加require\u目录Utils
。
语句。我想这可能是你的javascript出了问题并抛出了你发布的错误
这是文档中关于require\u目录的说明:
您还可以使用require_directory指令,该指令包含所有
JavaScript文件只在指定的目录中,没有递归
从文档中:
指令是自上而下处理的,但文件的顺序不同
未指定是否包含在require_树中。你不应该依赖别人
任何一种特殊的顺序。如果你需要确保
特定的JavaScript最终会在连接的
文件,首先需要清单中的先决条件文件
因此,如果需要在home.js
中的任何内容之前定义Utils
中的内容,我会在require\u树上方添加require\u目录Utils
。
语句。我想这可能是你的javascript出了问题并抛出了你发布的错误
这是文档中关于require\u目录的说明:
您还可以使用require_directory指令,该指令包含所有
JavaScript文件只在指定的目录中,没有递归
如果我们要从服务器加载文件,有什么具体的方法吗
特定目录
方法是使用另一个目录上的指令:
#app/assets/javascripts/application.js
#= require_tree ./utils
但是,如果您使用的是require\u tree.
,则基本上包括您的父目录下的所有目录(称为)
正如Nicolay所提到的,您基本上希望按照正确的顺序包含JS。虽然我不确定您为什么会在login.js和附加方法.min.js中出错
这意味着您的JS正在尝试调用它们,但它们没有加载。这只会导致预编译之类的错误(如果您只是在dev中运行,那么加载顺序应该不会有问题)
答案是将清单定义为在需要时包含各种文件:
#app/assets/javascripts/application.js
//= require jquery
//= require jquery_ujs
//= require_tree .
//= require vendor
//= require bootstrap
但更重要的是-如何调用函数?
如果我们要从服务器加载文件,有什么具体的方法吗
特定目录
方法是使用另一个目录上的指令:
#app/assets/javascripts/application.js
#= require_tree ./utils
但是,如果您使用的是require\u tree.
,则基本上包括您的父目录下的所有目录(称为)
正如Nicolay所提到的,您基本上希望按照正确的顺序包含JS。虽然我不确定您为什么会在login.js和附加方法.min.js中出错
这意味着您的JS正在尝试调用它们,但它们没有加载。这只会导致预编译之类的错误(如果您只是在dev中运行,那么加载顺序应该不会有问题)
答案是将清单定义为在需要时包含各种文件:
#app/assets/javascripts/application.js
//= require jquery
//= require jquery_ujs
//= require_tree .
//= require vendor
//= require bootstrap
但更重要的是-如何调用函数?