未满足PEER DEPENDENCY反应
我有反应相关的JavaScript的问题。这是由铬所捕获的错误时,网页显示:未满足PEER DEPENDENCY反应
Uncaught TypeError: Super expression must either be null or a function, not undefined
at _inherits (application.js:16301)
at application.js:16310
at Object.232.prop-types (application.js:16549)
at s (application.js:1)
at application.js:1
at Object.233../Collapse (application.js:16574)
at s (application.js:1)
at application.js:1
at Object.1.react (application.js:78)
at s (application.js:1)
当我安装我的反应使用NPM它抱怨反应,反应高度同行的依赖关系:
├─┬ UNMET PEER DEPENDENCY [email protected]
│ ├─┬ [email protected]
│ │ └─┬ [email protected]
│ │ ├── [email protected]
│ │ ├─┬ [email protected]
│ │ │ ├─┬ [email protected]
...
和:
├─┬ UNMET PEER DEPENDENCY [email protected]
│ └─┬ [email protected]
│ └─┬ [email protected]
│ └── [email protected]
之后,我改变了我的package.json文件:
"react": "0.14.9",
"react-bootstrap": "^0.28.1",
"react-collapse": "^2.2.1",
"react-dom": "^0.14.3",
"react-height": "2.2.1",
...
这些变化后,我完全删除node_modules
文件夹rm -rf
做了一个NPM缓存清理并重新安装。
非常相同的问题仍然存在。我注意到2个警告:
npm WARN [email protected] requires a peer of [email protected]>=15.3 but none was installed.
npm WARN [email protected] requires a peer of [email protected]^3 but none was installed.
更新软件包或与自身反应相关的问题有问题吗?
你react
版本不符合react-collapse
要求。这并不意味着这两个软件包不能一起工作,只是尝试一下,如果一切按预期工作。
但是如果你需要修复,你有这样做的方法有两种:
第一种方式
删除"react": "0.14.9",
线,并运行npm i --save react
。 NPM将安装最新的反应包。错误应该被修复。
方式二
如果你真的需要使用0.14.9
版本,你应该找到react-collapse
版本,这是你的reactjs版本兼容。
这样做键入您的控制台npm show react-collapse versions
- 记录的array
会显示出来。
现在我们必须选择一个早期版本,并检查我们所选软件包的peerDependencies
。
我们使用npm view [email protected]
命令,其结果将是
因为我们选择了@3.0.0
版本,这是在我们的例子好了,我们需要安装它。以下命令将执行npm install --save [email protected]
工作。
UPDATE
如果上述解决方案不起作用。请安装通过npm i --save <package-name>
手动失踪peerDependencies。
释:
检查您的NPM版本做npm -v
。如果您的版本大于3,则意味着必须手动安装对等方依赖关系。我想是这样的话,版本3.0.0于2015年中期
发布自动安装等依赖明确与之 NPM 3移除,因为它会导致更多的问题比它试图解决的问题。
请参阅official npm changelog,您正在寻找“突破性变化”部分。
有CLI tool自动安装NPM软件包及其对等关系。您可能会对此感兴趣。
您的反应版本已过时。 '需要react @> = 15.3'的同伴,你安装的版本是'0.14.9'。 – evolutionxbox
我做了一个完整的更新,并且Uncaught typeerror问题依然存在。 – learner