Ota*_*der 6 javascript node.js ecmascript-6
我正在将一些代码重构为 ES6 导入模式。我正在使用node 13.7.0.
我的package.json文件"type": "module"在顶部,但是当我运行我的脚本时,我得到
错误:找不到从 /Users/otaviobonder/WebstormProjects/newTE/back/src/server.js 导入的模块 /Users/otaviobonder/WebstormProjects/newTE/back/src/lib/Queue
我运行脚本 node --require dotenv/config src/server.js
我不明白为什么。我queue以import Queue from "./lib/Queue";in导入server.js,而我的Queue.js文件有一个默认导出:
import Queue from "bull";
import redisConfig from "../config/redis";
import * as Sentry from "@sentry/node";
import * as jobs from "../jobs";
Sentry.init({ dsn: process.env.SENTRY_DSN });
const queues = Object.values(jobs).map(job => ({
bull: new Queue(job.key, { redis: redisConfig }),
name: job.key,
handle: job.handle,
options: job.options
}));
export default {
queues,
add(name, data) {
const queue = this.queues.find(queue => queue.name === name);
return queue.bull.add(data, queue.options);
},
empty(name) {
const queue = this.queues.find(queue => queue.name === name);
return queue.bull.empty();
},
process() {
return this.queues.forEach(queue => {
queue.bull.process(queue.handle);
queue.bull.on("failed", (job, err) => {
Sentry.captureException(err);
});
});
}
};
Run Code Online (Sandbox Code Playgroud)
感谢任何帮助,因为我已经阅读了很多关于 node 和 ES6 的文章,但找不到解决方案。
谢谢!