Cannot extend an interface 'NodeJS.EventEmitter'. Did you mean 'implements'? 解決方法


好多基於electron的項目自己都沒有弄清楚就將里面的node版本弄成最新的版本,這樣一來,人家自己的倉庫在開發過程中雖然在本地運行的好好的(因為用的不是node的最新版本而是自己的機子上的老版本),但是提交上去之后別的開發者克隆完再本地運行tsc編譯時會出現Cannot extend an interface 'NodeJS.EventEmitter'. Did you mean 'implements'?這樣的提示,這就導致無法運行項目。我再GitHub上看到這種項目還不在少數,這里給大家講一個方法,直接在package.json文件里面將 "@types/node" 的版本改為12的版本,比如說, "@types/node": "12.12.21" 就是一個方案。 為什么會出現這種情況呢? 這是因為@types/node在不斷地更新,但是electron能夠支持地最高版本只是它的v12版本,所以才會出現二者不兼容的情況。

Solution:

Use @types/node for Node v12 for now. Actually Node version of Electron is still v12. So @types/node@12 would be better when you write a code which runs on Electron.




作者:艾孜爾江


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM