Visual Studio Code - 自动导入/快速修复不起作用

Smx*_*Cde 7 visual-studio-code vscode-settings

我的 VS Code 不会从node_modules.

我试图让它在两台 PC 和一台 Mac 上运行 - 结果是一样的:在我输入时没有建议导入,当我专注于一个符号并按Ctrl+./时没有选项Cmd+.- 没有快速修复建议。

我尝试安装自动导入扩展 - 没有建议。

我阅读了有关“添加所有丢失的导入”的发行说明帖子,并尝试应用快捷方式 - 不走运,它没有做任何事情。

在这一点上我完全迷失了,我看到很多帖子有人问同样的问题,人们建议他们通过按 Ctrl+ 来使用 Quick Fix。但正如您在屏幕截图中看到的那样 - 它没有任何建议。

我正在使用 TypeScript,但我也用 JS 尝试过这个 - 不走运。

在屏幕截图上,我在 WSL 中运行我的应用程序,但我也在 Windows 和 macOS 上尝试了本机运行。

有任何想法吗?谢谢!

快速修复 不建议导入

Pav*_*vel 6

似乎直到最近(在 TypeScript 4 发布之前)使自动导入工作的唯一方法是在您的项目中至少导入一次您需要的每个库(无论在哪里)。在那之后,VS Code 应该从它们开始自动导入东西。

启动TS 4 VS代码假设开始自动做这件事(更具体的-从所有自动在您指定的库package.json),虽然我已经注意到,它使用了错误的路径的代码,而进口-到/距离/文件夹而不是库公开的任何内容。因此,Node.js可能无法解析和执行它们。我在这里创建了一个问题

请注意,为了让这一切正常工作

  • 确保你的 VS Code 使用的是 TS 4.0.2 或更高版本(如右下角所示,点击更改)
  • 您可能需要将设置设置typescript.preferences.includePackageJsonAutoImportson,因为如果您的导入列表超过 10 个依赖项 - 它可能/不会扫描它们。有关详细信息,请参阅发行说明

底线 - 为了它现在正常工作,你仍然需要在你的代码(任何地方)中导入(手动)一个新的依赖项至少一次,然后 VS Code 自动导入将开始为该库工作。

  • 将“typescript.preferences.includePackageJsonAutoImports”设置为“on”似乎对我有用,但仅适用于 tsx 文件。JSX 文件似乎不起作用。 (2认同)