不久前我创建了一个项目,最近尝试运行它,但从expo中得到一个错误,说我的SDK版本不是最新的。所以我按照这个答案(The experience you requested uses Expo SDK v(null), but this copy of Expo Client requires at least v23.0.0)来修复它。然而,现在我遇到了一个新的错误,我的项目无法运行,我得到了这个错误:
无法连接到开发服务器
我能做些什么来解决这个问题?我不想尝试一百种不同的解决方案,然后意外地永远失去我的项目,不得不重新开始,所以我想我应该在这里问一下。
下面是我的package.json
:
{
"main": "node_modules/expo/AppEntry.js",
"scripts": {
"start": "expo start",
"android": "expo start --android",
"ios": "expo start --ios",
"eject": "expo eject"
},
"dependencies": {
"axios": "^0.19.0",
"expo": "^33.0.0",
"firebase": "^6.5.0",
"formik": "^1.5.8",
"global": "^4.4.0",
"native-base": "^2.12.1",
"react": "16.5.0",
"react-native": "https://github.com/expo/react-native/archive/sdk-33.0.0.tar.gz",
"react-native-elements": "^0.18.5",
"react-native-keyboard-aware-scroll-view": "^0.9.1",
"react-native-modal": "^11.3.1",
"react-native-paper": "^2.16.0",
"react-native-smart-carousel": "^1.1.0",
"react-native-snap-carousel": "3.6.0",
"react-native-vector-icons": "^6.6.0",
"react-navigation": "^3.11.0",
"styled-components": "^4.2.0",
"truffle": "^5.0.34",
"uuid": "^3.3.3",
"web3": "0.19"
},
"devDependencies": {
"babel-preset-expo": "^5.0.0"
},
"private": true
}
我在我的终端中运行expo-cli --version
,这是我收到的:
3.0.4
谢谢
3条答案
按热度按时间ctehm74n1#
请按照以下步骤操作:
1.运行
npm install -g expo-cli
以全局安装最新的Expo CLI。1.如果您正在使用Expo CLI服务器,请将其关闭。
1.确保
app.json
中的sdkVersion
为33.0.0
1.将
package.json
中的react
依赖关系从16.5.0
更改为16.8.3
1.删除项目
node_modules
目录和package-lock.json
文件1.运行
npm install
或yarn install
取决于您的包管理器。1.运行
expo start -c
清除缓存并启动应用程序。奖金
现在,对于任何基于Expo的API或依赖项,您可以使用
expo install
而不是npm install
(即expo install @expo/vector-icons
)来安装它。这比使用传统的npm install
或yarn install
要好,因为它将安装与您当前Expo SDK兼容的依赖项版本。希望这有帮助!
alen0pnh2#
这个问题与watchman & brew有关。
通过运行以下命令,执行以下步骤:
npm r -g watchman
brew update && brew upgrade
brew install --build-from-source python@3.10
(可选)brew install watchman
如果遇到权限问题,请确保运行sudo。
093gszye3#
对我(和其他人)起作用的是删除watchman(在Mac上):
brew uninstall watchman
另请参见www.example.comhttps://github.com/facebook/react-native/issues/29587#issuecomment-886284902