2017-04-26 254 views
5

我有反應相關的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. 

更新軟件包或與自身反應相關的問題有問題嗎?

+0

您的反應版本已過時。 '需要react @> = 15.3'的同伴,你安裝的版本是'0.14.9'。 – evolutionxbox

+0

我做了一個完整的更新,並且Uncaught typeerror問題依然存在。 – learner

回答

3

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]命令,其結果將是

enter image description here

因爲我們選擇了@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軟件包及其對等關係。您可能會對此感興趣。

+0

我做了一個完整的更新。更改我的package.json文件和未捕獲的typeerror問題仍然存在。 – learner

+0

我已經更新了我的答案,現在就看到它,如果它可以幫助你。 – loelsonk

相關問題