无法在nodejs中导入没有.js扩展名的模块

Cra*_*doe 6 node.js express

在我的 Nodejs 应用程序中导入模块总是标记错误

Error [ERR_MODULE_NOT_FOUND]: Cannot find module 'C:\xampp\htdocs\2021\farmi\api\src\controllers\user.controller' imported from C:\xampp\htdocs\2021\farmi\api\src\routes\user.route.js
    at finalizeResolution (internal/modules/esm/resolve.js:276:11)
    at moduleResolve (internal/modules/esm/resolve.js:699:10)
    at Loader.defaultResolve [as _resolve] (internal/modules/esm/resolve.js:810:11)
    at Loader.resolve (internal/modules/esm/loader.js:88:40)
    at Loader.getModuleJob (internal/modules/esm/loader.js:241:28)
    at ModuleWrap.<anonymous> (internal/modules/esm/module_job.js:56:40)
    at link (internal/modules/esm/module_job.js:55:36) {
  code: 'ERR_MODULE_NOT_FOUND'
}
[nodemon] app crashed - waiting for file changes before starting...
Run Code Online (Sandbox Code Playgroud)

这是因为我没有在其中包含 .js 扩展名import userController from '../controllers/user.controller';

请问我该如何解决这个问题。

Ruk*_*han 5

../controllers/user.controller是一个相对说明符。它们指的是相对于导入文件位置的路径。对于这些文件,文件扩展名始终是必需的。查看文档