使用Expo时,在React Native中解决同位依赖问题的最佳方法是什么?我遇到了对等依赖性错误。我没有安装任何新的软件包来引起新的对等依赖,发生的事情是我收到了节点模块错误(有时会发生在RN中),我不得不吹走并重新安装所有节点模块。
当我重新实例化我的节点模块时,我认为有些东西不同步。关于如何绕过它的任何想法?我已经尝试使我的package.json专门版本化,但我没有找到正确的设置。 FWIT Expo正在向我发出警告:
“警告:'firebase'同伴依赖缺失”
当我跑步时
npm install OR npm ls
我收到以下消息:
FWIT:我的package.json看起来像这样
{
"name": "RN-expo",
"version": "0.0.0",
"description": "Hello Expo!",
"author": null,
"private": true,
"main": "main.js",
"dependencies": {
"expo": "17.0.0",
"firebase": "4.1.2",
"geofire": "^4.1.2",
"lodash": "^4.17.4",
"moment": "^2.18.1",
"react": "16.0.0-alpha.6",
"react-native": "https://github.com/expo/react-native/archive/sdk-17.0.0.tar.gz",
"react-native-gifted-chat": "^0.1.4",
"react-native-modal-dropdown": "^0.4.4",
"react-native-multislider": "0.0.14",
"react-native-vector-icons": "^4.2.0",
"react-navigation": "git+https://github.com/react-community/react-navigation.git"
},
"devDependencies": {
"standard": "^10.0.2"
}
}
我的团队中的任何其他人的计算机上都没有发生这些错误,因此我认为它与我计算机上的节点依赖关系有关。我已经在我的计算机上完全卸载了所有node / npm相关资料,并尝试重新安装它以查看它是否解决了这个问题。
滚动浏览npm ls时,我看到了" UNMET PEER DEPENDENCIES"是:
关于如何解决这个问题的任何建议?
答案 0 :(得分:2)
从我在package.json中看到的情况来看,我希望你的队友也会遇到同样的警告。
geofire和firebase之间的警告是因为你正在使用firebase@4.1.2
,但geofire需要firebase 3.x.通常(但通常不是)像geofire这样的库将使用其对等依赖项的较新版本,因此我建议询问geofire的作者是否适用于firebase@4.x
。
React Native软件包和React之间的其他警告是虚假的。例如,react-native-maps表示它接受react >= 15.4.0
并且您使用react@16.0.0-alpha.6
,这显然大于15.4.0
。 Yarn解决了这个问题,Yarn检测到react@16.0.0-alpha.6
满足react >= 15.4.0
的要求。
所有这一切都是说我希望你能看到你所看到的警告,并且firebase是合法的,你可以忽略反应。