【问题标题】:Visual Studio Code - Auto Imports / Quick Fix does not workVisual Studio Code - 自动导入/快速修复不起作用
【发布时间】:2020-08-18 23:18:13
【问题描述】:

我的 VS Code 不会从 node_modules 自动导入内容。

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

我尝试安装 Auto Import 扩展 - 没有建议。

我读到了release notes post 上关于“添加所有缺失的导入”的文章并尝试应用快捷方式 - 不走运,它什么也没做。

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

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

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

有什么想法吗?谢谢!

【问题讨论】:

    标签: visual-studio-code vscode-settings


    【解决方案1】:

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

    启动 TS 4,VS 代码假设开始自动执行(更具体 - 自动包含在您的 package.json 中指定的所有库中),尽管我注意到它在导入时使用了错误的代码路径- 到 /dist/ 文件夹,而不是库公开的任何内容。因此,Node.js 可能无法解析和执行它们。 I've created an issue here

    请注意,为了使其正常工作

    • 确保您的 VS Code 使用 TS 4.0.2 或更高版本(如右下角所示,点击即可更改)
    • 您可能需要将设置 typescript.preferences.includePackageJsonAutoImports 设置为 on,因为您的导入列表超过 10 个依赖项 - 它可能/不会扫描它们。见release notes for the details

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

    【讨论】:

    • 设置,typescript.preferences.includePackageJsonAutoImportson 似乎对我有用,但仅适用于 tsx 文件。 JSX 文件似乎不起作用。
    猜你喜欢
    • 1970-01-01
    • 2018-02-25
    • 2020-03-02
    • 2020-12-02
    • 1970-01-01
    • 2017-02-13
    • 2018-09-16
    • 1970-01-01
    • 2021-09-06
    相关资源
    最近更新 更多