Jus*_*ier 2 javascript node.js visual-studio-code
在 VS Code 中使用 NodeJS 时,我遇到了以下问题:VS Code 的自动导入功能不包含.jsNode 模块系统所需的扩展。
例如:
// As required by Node
import { foo } from './foo.js'
// As added by VS Code
import { foo } from './foo'
Run Code Online (Sandbox Code Playgroud)
当按照 VS Code 的指定保留时,我收到以下错误:
node:internal/process/esm_loader:91
internalBinding('errors').triggerUncaughtException(
^
Error [ERR_MODULE_NOT_FOUND]: Cannot find module '\mbot\util\strings' imported from \mbot\index.js
Did you mean to import ../util/strings.js?
at new NodeError (node:internal/errors:372:5)
at finalizeResolution (node:internal/modules/esm/resolve:405:11)
at moduleResolve (node:internal/modules/esm/resolve:966:10)
at defaultResolve (node:internal/modules/esm/resolve:1176:11)
at ESMLoader.resolve (node:internal/modules/esm/loader:605:30)
at ESMLoader.getModuleJob (node:internal/modules/esm/loader:318:18)
at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:80:40)
at link (node:internal/modules/esm/module_job:78:36) {
code: 'ERR_MODULE_NOT_FOUND'
}
Run Code Online (Sandbox Code Playgroud)
可以通过将jsconfig.json文件添加到项目根目录来解决此问题。具体来说,通过至少包含以下内容,我的项目开始自动导入.jsNodeJS 所需的文件扩展名。
jsconfig.json
{
"compilerOptions": {
"moduleResolution": "nodenext", // <- Necessary to get imports with .js
},
"exclude": ["node_modules"]
}
Run Code Online (Sandbox Code Playgroud)
注意:
VS Code 会抱怨该nodenext值需要特殊包,但没有它也能正常工作。
| 归档时间: |
|
| 查看次数: |
982 次 |
| 最近记录: |