在TypeScript Visual Studio代码编辑器中强制自动导入以使用.“js”扩展名

izkcnapc  于 2023-03-04  发布在  TypeScript
关注(0)|答案(2)|浏览(214)

自动导入完成功能有时会添加.js扩展名,但并非总是如此。然而,如果TypeScript源代码中没有扩展名,tsc编译器就不会将扩展名添加到发出的JavaScript文件中,这可能会导致运行时问题,如模块未找到错误。
有关问题的详细信息,请参阅:Appending .js extension on relative import statements during Typescript compilation (ES6 modules).
问题是:是否有办法配置自动导入完成功能,强制在导入语句中附加.js扩展?或者是否有任何附加组件或VS代码扩展可以实现这一点?
这件小事有时非常烦人!

jdzmm42g

jdzmm42g1#

我发现现在VSCode在条目下的首选项或设置Ctrl + ,中有它:"typescript.preferences.importModuleSpecifierEnding": "js",.

esyap4oy

esyap4oy2#

崇高文本版
安装包“LSP-typescript”。单击首选项-〉包设置-〉LSP -〉服务器-〉LSP-typescript。添加以下json

{
  "initializationOptions": {
    "preferences": {
      "importModuleSpecifierEnding": "js"
    }
  }
}

或者在tsconfig中使用此命令

{
  "compilerOptions": {
    "moduleResolution": "nodenext", // <- Necessary to get imports with .js
  },
  "exclude": ["node_modules"]
}

相关问题