VSCode 显示 jsconfig.json 的错误:“找不到文件'.../node_modules/dotenv/types'。”
似乎正在寻找 dotenv 的打字稿定义,但我没有使用打字稿或 dotenv(除了在导入的包中)。并且有一个node_modules/dotenv/types
文件夹。
VSCode 显示 jsconfig.json 的错误:“找不到文件'.../node_modules/dotenv/types'。”
似乎正在寻找 dotenv 的打字稿定义,但我没有使用打字稿或 dotenv(除了在导入的包中)。并且有一个node_modules/dotenv/types
文件夹。
我遇到过同样的问题。重新启动 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。
您可以排除类型检查dotenv
:
// tsconfig.json or jsconfig.json
"typeAcquisition": {
"exclude": [ "dotenv" ]
}
这样,typescript 将不会看到这个库进行自动类型获取,然后,vscode错误将得到修复。
请记住,更改会在一段时间后影响vscode错误。不要假设更改此选项后立即看到修复。
要查看效果,您可以重新启动vscode扩展服务器(Ctrl+Shift+P
然后键入Restart Extension Host
并按 Enter)并等待几分钟以验证解决方案。
该路径node_modules/dotenv/types
被引用为 dotenv 中的“类型”声明package.json
。问题是类型声明应该指向一个文件,而不是一个文件夹。所以这是 dotenv 的包的问题,而不是 VS Code 的问题。
有一个打开的 PR 来解决这个问题;在合并之前,您可以编辑node_modules/dotenv/package.json
并替换"types": "types"
为"types": "types/index.d.ts"
.
刚刚面临同样的问题。删除node_modules
并重新安装所有软件包解决了这个问题。
我遇到了同样的问题,发现将其添加到 VSCode 设置最终修复了它:
"json.schemas": [
{
"$schema": "https://json.schemastore.org/jsconfig"
}
],
我尝试了所有提到的解决方案,但没有一个解决方案。所以,我尝试重新打开代码编辑器,问题就解决了