在WebStorm中为我的React应用程序进行的Jest测试中
const { createMemoryHistory } = require("history");
具有以下警告:
模块未在package.json依赖项中列出
测试按预期运行,它们按预期通过和失败。createMemoryHistory
起作用。当我把鼠标悬停在history
上时,WebStorm实际上向我显示了库的文档。
(注意:(但是history
和fs
一样是原生JS库,不是吗?我该如何修复这个烦人的警告?
UPDATE:好的,我知道fs
不是一个原生JS库,它是一个核心node.JS模块。我错了,谢谢你纠正我的错误。
我看到我的package-lock.json
确实包含了一个"node_modules/history"
的条目。它看起来有两个凹痕深,但锁定文件太复杂了,我无法真正分辨,也无法获得面包屑,也无法折叠树枝来查看这条线在树上的位置。
所以我想真正的问题是,Webstorm说我没有依赖关系,但锁定文件暗示我有。除非我进一步误解了。
再说一遍,我该如何修复这个烦人的警告?(或者我还遗漏了什么事实?记住,所有东西实际上都有效(。
fs
是Node.js的核心模块,即其代码被编译成Node.js二进制文件,不必安装。历史库是一个常见的NPM模块,它不是Node.js核心的一部分,必须添加npm i history
(请参阅https://github.com/remix-run/history/blob/main/docs/installation.md)。IDE只是告诉您正在导入一个模块,该模块未在package.json
的依赖项中列出