如何正确导入我的收藏定义? 尝试导入时,我收到此错误消息
我将我的集合定义从myMeteorApp.js主文件中外部化: (我的目录结构如下所示:)
/myMeteorApp
/myMeteorApp.js
...到tasks.js文件: (我的目录结构目前如下所示:)
/myMeteorApp
--/imports/api/tasks.js
tasks.js的内容如下所示:
import { Mongo } from "meteor/mongo";
const Images = new FS.Collection("images", {
stores: [new FS.Store.FileSystem("images", {path: "~/uploads"})]
});
const buyList = new Mongo.Collection("BuyList");
const WhoAreWe = new Mongo.Collection("whoDb");
const merchantReviews = new Mongo.Collection("MerchantReviews");
const Messages = new Meteor.Collection("messages", {transform: function (doc) { doc.buyListObj = buyList.find({sessionIDz: {$in: [doc.buyList]}}); return doc; }});
export { Images };
export { buyList };
export { WhoAreWe };
export { merchantReviews };
export { Messages };
我安装了babel-preset-es2015和ecmascript软件包,但这些都没有帮助。
期待您的帮助......
答案 0 :(得分:1)
我们所有的聊天会话都表明您的原始应用使用的Meteor 1.2不支持ES2015模块。此外,您没有正确import
。
以下是import
相关问题的简短清单:
meteor --version
)。早期版本不支持模块功能。ecmascript
软件包(从项目的根目录运行meteor list
或cat .meteor/packages | grep ecmascript
。如果没有,请meteor add ecmascript
。这是用于编译ES2015的包。确保您是using it correctly。出口有两种类型:
import foo from 'imports/bar'
与export default bar
一起使用。import { foo } from 'imports/bar'
与export const foo = ...
等一起使用。