2016-08-02 167 views
0

我试图运行一个流星应用程序,但在我试图导入我的一个文件时仍然得到Cannot find module error找不到流星模块

我的文件夹目录:

/app/client/imports/api/tasks.js

/app/server/main.js

在我main.js我试图导入tasks.js

import '../client/imports/api/tasks.js';

这引发错误Error: Cannot find module '../client/imports/api/tasks.js'

tasks.js

import { Mongo } from 'meteor/mongo'; 

export const Tasks = new Mongo.collection('tasks'); 

有谁知道什么可能是怎么回事?

+0

你是否在'tasks.js'中导出模块? –

+0

嗨 - 是的 - 看到我上面编辑的问题。 –

+0

我从来没有使用流星,但是你应该不要给你的导入名称? '从'../ client/imports/api/tasks.js'导入任务;' –

回答

2

您不能从/server侧导入基于/client的文件。存储在client目录下的文件仅捆绑在一起,并可供应用程序的客户端(在用户浏览器中运行的部分)使用。存储在server目录下的文件仅捆绑在服务器端,并通过节点运行。

tasks.js引用中删除/client前缀,以便能够引用双方的导入。例如:

/app/imports/api/tasks.js

import { Mongo } from 'meteor/mongo'; 
const Tasks = new Mongo.Collection('tasks'); 
export default Tasks; 

然后在/app/client/main.js/app/server/main.js,你可以参考tasks.js文件,如:

import Tasks from '/imports/api/tasks.js'; 
0

的问题是在文件结构中。 你进口/文件夹应该是在同一个水平客户端/服务器/