首页 > 解决方案 > Meteor Wonky Magic 进口

问题描述

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

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

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

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

然后我可以在我的应用程序的任何地方将它们作为全局变量引用。有趣的是:我从来没有在我的项目中使用过“共享”这个词,意思是,我从来没有导入这个文件,我从来没有需要这个文件,它是自己加载的,并且在没有被告知的情况下工作。

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

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

标签: meteorimportimports-loader

解决方案


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

Meteor 1.7开始,即使在文件夹之外,新项目也默认启用延迟加载。imports/

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

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

如果你想使用预先加载(禁用延迟加载),你必须从你的package.json.


更多资源在这里:


推荐阅读