如何修复“找不到文件'.../node_modules/dotenv/types'。”来自 jsconfig.json 的错误?
Posted
技术标签:
【中文标题】如何修复“找不到文件\'.../node_modules/dotenv/types\'。”来自 jsconfig.json 的错误?【英文标题】: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
文件夹。
【问题讨论】:
【参考方案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"
],
【讨论】:
以上是关于如何修复“找不到文件'.../node_modules/dotenv/types'。”来自 jsconfig.json 的错误?的主要内容,如果未能解决你的问题,请参考以下文章