从流星单独文件调用的函数(call functions from separate files wi

2019-09-03 00:43发布

我想创建流星的应用程序,从我的理解手册它这是在子目录首次加载,然后遵循字母顺序排列。 我的文件结构是这样的...

/server
/lib
/client
    /lib
        game.js -> already starts declaring the function "makeBoard(){}"
    /template.js -> where the function "makeBoard()" is called.

从而出现了误差函数“makeBoard()”不存在,只有当我在同一个文件中声明,我想打电话给它的工作原理。 甚至当我移动的文件“game.js”去哪儿“template.js”,它发生在同一目录下。 我应该如何正确地做出是在流星不同的文件资源的引用?

Answer 1:

与定义功能makeBoard = function() { ... }

与定义功能function foo() { ... }是本地的文件,如与定义的变量var bar = ...



Answer 2:

使用全局定义的变量,AVITAL建议,将工作,但不推荐码设计选择( 见JS错误1这里列出 )。

相反,在你lib目录下,你可以创建一个文件:

Meteor.myFunctions = {
...
    makeBoard : function() { ... },
...
}

然后,在任何其他js文件,你可以调用Meteor.myFunctions.makeBoard() 这应该在做lib目录,因为流星保证在js文件lib先于其他目录加载,所以你的功能已经被加载。



文章来源: call functions from separate files with Meteor