各個(gè)版本出現(xiàn)相同問題可能不盡相同,我出問題的版本是
"react": "16.0.0-alpha.6",
"react-native": "0.44.3",
"react-native-root-toast": "^1.4.0",
react-native-root-toast 本身這里不做介紹,這里只是根據(jù)由此問題引出:第三方在引用React-Native內(nèi)部模塊時(shí),由于各自版本不一致導(dǎo)致的文件引用錯(cuò)誤的問題的解決思路
error: bundling: Unable To Resolve Error: Unable to resolve module
npm install react-native-root-toast --save
此時(shí)不僅會(huì)安裝一個(gè)react-native-root-toast 還有一個(gè) react-native-root-siblings也會(huì)一并安裝上
然后進(jìn)入程序就會(huì)報(bào)如下錯(cuò)誤,根據(jù)提示查看/node_modules/react-native-root-siblings/lib/AppRegistryInjection.js文件

image.png
找到問題所在

image.png
原因是AppRegistryInjection.js中引用的
EventEmitter目錄結(jié)構(gòu)和本版本React-Native的EventEmitter的目錄結(jié)構(gòu)不一致。修改方案:找到react-native-root-toast匹配的React-Native版本,能找到最好,找不到的情況下,另一種方案是直接修改AppRegistryInjection.js 文件,

image.png
這個(gè)根據(jù)自身引用React-Native 版本來(lái)設(shè)置,各個(gè)版本可能不盡相同。
注意,這里直接修改的是本地依賴庫(kù)node_modules中的文件
所以如果再次創(chuàng)建node_modules會(huì)導(dǎo)致修改丟失。