流星奇幻魔法进口

时间:2018-07-16 15:11:22

标签: meteor import imports-loader

我已经使用流星已有一段时间了,并且遇到了意外的行为,我已经将文件系统设置为:

-workspace
    -client
    -server
    -shared
        -shared.js

在shared.js内,我创建了mongo集合:

Collection= new Mongo.Collection('collection');

然后,我可以在应用程序中的任何位置将它们作为全局变量引用。有趣的部分是:我从来没有在项目中使用过“共享”一词,这意味着,我从未导入过此文件,我从未需要过此文件,它是独立加载的,并且无需通知即可工作。

我目前正试图在另一个项目中复制它,但无济于事。谁能解释为什么它在一个项目中而不是另一个项目中加载?以及如何在第二个项目中获得这种行为?

研究完之后,似乎在我的第二个项目中,shared.js根本没有加载。

1 个答案:

答案 0 :(得分:2)

我猜您的两个项目不是使用相同的Meteor版本创建的。

Meteor 1.7 起,即使在imports/文件夹之外,新项目也默认启用了惰性加载

这是由mainModule文件中的属性package.json完成的:

"mainModule": {
  "client": "client/main.js",
  "server": "server/main.js"
},

如果要使用紧急加载(禁用延迟加载),则必须从package.json中删除mainModule属性。


更多资源在这里: