我正在尝试运行流星应用,但在尝试导入其中一个文件时不断获取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 :(得分:3)
您无法从/client
方面导入基于/server
的文件。存储在client
目录下的文件仅捆绑在一起,并可供应用程序的客户端(在用户浏览器中运行的部分)使用。存储在server
目录下的文件仅捆绑在服务器端,并通过Node运行。
从/client
引用中删除tasks.js
前缀,以便能够引用双方的导入。例如:
<强> /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';
答案 1 :(得分:0)
问题在于文件结构。 您的 导入/ 文件夹应与 客户端/ 和 服务器/处于同一级别 即可。