我正在为我的项目编写后端。我已经注意到它变得非常混乱,并且一遍又一遍地重复大量代码。我决定重写所有内容并使用类。我还决定使用ES6模块进行导入。我遇到的第一个障碍是,我似乎不能让我的路线工作。
import express from 'express';
export const router = express.Router();
router.post('/test', async (req, res) => {
'test'
});
将其导入server.js
import { router } from './routes/user.route'
server.use(router)
我得到的错误
Cannot find module
2条答案
按热度按时间ss2ws0br1#
ES模块需要文字说明符(没有像CJS中那样的无扩展名的神奇解析)。
在原始的import语句中,指定符指向一个不存在的模块(没有名为
user.route
的文件-其名称为user.route.js
):相反,您必须提供完整路径(包括扩展名):
更多信息,请参阅Mandatory file extensions - Modules:ECMAScript模块|Node.js文档
hkmswyz62#
尝试使用带扩展名的完全限定名导入。