【问题标题】:How to fix "File '.../node_modules/dotenv/types' not found." error coming from jsconfig.json?如何修复“找不到文件'.../node_modules/dotenv/types'。”来自 jsconfig.json 的错误?
【发布时间】:2020-11-17 07:46:04
【问题描述】:

VSCode 显示 jsconfig.json 错误:“找不到文件 '.../node_modules/dotenv/types'。”

似乎正在寻找 dotenv 的 typescript 定义,但我没有使用 typescript 或 dotenv(除了在导入的包中)。还有一个node_modules/dotenv/types 文件夹。

【问题讨论】:

    标签: visual-studio-code dotenv vscode-jsconfig


    【解决方案1】:

    我遇到了同样的问题。重新启动 VSCode 解决了这个问题。见:https://github.com/motdotla/dotenv/issues/475

    编辑:这似乎是 dotenv 的 package.json 内容的问题。有一个公开的 PR,但作者目前还没有回复/合并。链接:https://github.com/motdotla/dotenv/pull/476

    编辑 2: 现在应该修复了! dotenv v8.4.0 修复了这个问题。见https://github.com/motdotla/dotenv/releases/tag/v8.4.0

    【讨论】:

    • 说真的!有时 VSCode 毫无意义。 :|
    • 重启 VS Code 暂时隐藏了问题,但过一会又回来了。
    【解决方案2】:

    您可以排除 dotenv 的类型检查:

    // tsconfig.json or jsconfig.json
    "typeAcquisition": {
      "exclude": [ "dotenv" ]
    }
    

    这样,typescript 将不会看到 auto-type acquisition 的这个库,然后,vscode 错误将被修复。

    请记住,这些更改会在一段时间后影响 vscode 错误。不要假设更改此选项后立即看到修复。

    要查看效果,您可以重新启动 vscode 扩展服务器(Ctrl+Shift+P 并输入 Restart Extension Host 并按 Enter)并等待几分钟以验证解决方案。

    【讨论】:

    • 这是 100% 正确答案,非常感谢。甚至包括Restart Extension Host 命令,我将经常使用它。这一直让我发疯:)
    • Restart Extension Host 震撼了我的世界!
    • 我将此添加到 jsconfig 并抱怨 Unknown compiler option 'typeAcquisition' 并且问题在几秒钟后又出现了
    • @Leonardo 感谢您的报告,您使用哪个版本的打字稿?
    • 我没有直接使用ts,实际上我使用的是jsconfig,但我已经尝试过vscode的版本4.4.3和node_modules的版本4.5.2,他们都抱怨@ jsconfig 中的 987654332@ 选项。反正几分钟后原来的错误又回来了
    【解决方案3】:

    路径 node_modules/dotenv/types 被引用为 dotenv 的 package.json 中的“类型”声明。 问题是types declaration 应该指向一个文件,而不是一个文件夹。 所以这是 dotenv 的包的问题,​​而不是 VS Code 的问题。

    有一个opened PR to fix this problem;在合并之前,您可以编辑node_modules/dotenv/package.json 并将"types": "types" 替换为"types": "types/index.d.ts"

    【讨论】:

      【解决方案4】:

      刚刚遇到同样的问题。删除node_modules 并重新安装所有软件包解决了这个问题。

      【讨论】:

        【解决方案5】:

        我尝试了所有提到的解决方案,但都没有解决我的问题。于是,我尝试重新打开代码编辑器,问题就解决了

        【讨论】:

          【解决方案6】:

          我遇到了同样的问题,发现将其添加到 VSCode 设置最终解决了它:

            "json.schemas": [
              {
                "$schema": "https://json.schemastore.org/jsconfig"
              }
            ],
          

          【讨论】:

            猜你喜欢
            • 2020-11-30
            • 1970-01-01
            • 2021-01-04
            • 1970-01-01
            • 2023-04-09
            • 2021-10-29
            • 2019-08-14
            • 1970-01-01
            • 2017-10-03
            相关资源
            最近更新 更多