Javascript Meteor按什么顺序包含我的js文件
我有一个js文件:Javascript Meteor按什么顺序包含我的js文件,javascript,meteor,Javascript,Meteor,我有一个js文件: function library_f() { } function some_f() { library_f(); } function another_f() { library_f(); } 但是代码看起来很难看,我决定将我的js文件分为三部分: one.js: function library_f() { } two.js: function some_f() { library_f(); } three.js: function another_
function library_f() {
}
function some_f() {
library_f();
}
function another_f() {
library_f();
}
但是代码看起来很难看,我决定将我的js文件分为三部分:
one.js:
function library_f() {
}
two.js:
function some_f() {
library_f();
}
three.js:
function another_f() {
library_f();
}
但现在我发现了一个错误
library_f() is not defined
如何设置包含js文件的顺序?来自:
- 首先加载应用程序根目录下lib目录中的文件。 与main.*匹配的文件在加载其他文件之后加载
- 子目录中的文件在父目录中的文件之前加载,因此最深子目录中的文件首先加载(在lib之后),根目录中的文件最后加载(除了main.*)
- 在目录中,文件按文件名的字母顺序加载
library_f = library_f() {
...
}
以便其他文件可以访问它。变量也是如此:
var x = true; //Not accessible by other files
x = true; //Accessible by other files
var dothis = function () {...} //Not accessible by other files
dothis = function() {..} //Not accessible by other files
function dothis() {..} //Not accessible ny other files
Meteor会收集所有JS文件并将它们放在一个文件中,而顺序并不是你可以控制的 我认为这里的问题是:你从哪里调用函数?如果他们马上就可以自动执行,那么你是对的,订单可能很重要。但是,Meteor通常将函数加载到DOM中,然后运行它们以响应某些事件,如
Meteor.startup(回调)
或Template.page.rendered(回调)
。在这些示例中执行时,您的所有JS文件都将被加载,并且您的函数都应该准备就绪,可以按照您喜欢的顺序执行
如果您不想在创建它们之后立即运行它们,那么值得在浏览器控制台中检查一下,您可以在页面加载后看到这些函数都存在于DOM中。键入
library\u f
并查看返回的内容。您还可以查看以了解更多信息如果您想确保您的文件管理器或文件夹是第一个加载的,只需在文件名中添加下划线,这样将是第一个加载的。