我的expo应用程序出了问题。它悔改不接受我的改变。实时重新加载,热重新加载不起作用,当我摇动我的设备并按“重新加载”时,我的应用程序重新加载,但更改没有出现。
我已经做了什么:
node_modules
和package-lock.json
,并运行$ npm install
[我使用的是基本的os(linux),expo-cli和android设备]
有类似事情发生在某人身上吗?你是怎么解决的?
我的项目依赖项:
"dependencies": {
"@expo/samples": "2.1.1",
"@expo/vector-icons": "^6.3.1",
"expo": "^25.0.0",
"firebase": "^4.12.1",
"native-base": "^2.3.10",
"react": "16.2.0",
"react-native": "https://github.com/expo/react-native/archive/sdk-25.0.0.tar.gz",
"react-navigation": "^1.0.0-beta.27"
“神奇地解决”删除node_modules
文件夹并运行$ npm install
(AGAIN)并运行...(?)
我遇到了同样的问题。我注意到我已经将我的应用程序从开发转为生产再转换为开发。
问题是当我在最后一步切换到开发时,缓存仍然在生产。
我的控制台中的日志是:
Running application "main" with appParams: {"initialProps":{"exp":{"initialUri":"exp://192.168.43.89:19000","manifest":{"iconUrl":"http://192.168.43.89:19001/assets/./assets/icon.png","isVerified":true,"hostUri":"192.168.43.89:19000","version":"1.0.0","slug":"myapp","splash":{"resizeMode":"contain","backgroundColor":"#f7be13","image":"./assets/splash.png","imageUrl":"http://192.168.43.89:19001/assets/./assets/splash.png"},"logUrl":"http://192.168.43.89:19000/logs","privacy":"public","assetBundlePatterns":["**/*"],"primaryColor":"#023C69","android":{"versionCode":1,"package":"com.apppzzzz.myapp","config":{"googleMaps":{"apiKey":""},"googleSignIn":{"certificateHash":"STRING","apiKey":"STRING"}}},"orientation":"portrait","bundleUrl":"http://192.168.43.89:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=false&minify=true&hot=false&assetPlugin=E%3A%5Ccde%5CTutorial%5CReactNative%5Cmyapp_rnapp%5Cnode_modules%5Cexpo%5Ctools%5ChashAssetFiles.js","updates":{"fallbackToCacheTimeout":0},"ios":{"supportsTablet":true},"packagerOpts":{"dev":false,"lanType":"ip","hostType":"lan","minify":true,"urlRandomness":"ha-wky"},"sdkVersion":"32.0.0","mainModuleName":"node_modules/expo/AppEntry","xde":true,"id":"@anonymous/myapp-dec62901-f76d-419c-8e72-76f2c0e279d7","androidStatusBar":{"backgroundColor":"#f7be10"},"debuggerHost":"192.168.43.89:19001","platforms":["ios","android"],"env":{},"icon":"./assets/icon.png","loadedFromCache":true,"developer":{"tool":"expo-cli","projectRoot":"E:\\cde\\Tutorial\\ReactNative\\myapp_rnapp"},"name":"myapp"},"shell":false}},"rootTag":1}
. __DEV__ === false, development-level warning are OFF, performance optimizations are ON
注意__DEV__ === false
所以我使用SHIFT+R
清除了控制台中的缓存然后转到我的手机并清除了Expo app缓存
然后重新启动我的开发服务器,一切都很顺利!
日志__DEV__ === false
改为__DEV__ === true
,世博重装问题消失了!
在Windows机器和iPhone 6S上运行世博会时发生了类似于此的事情。通过创建一个空的expo文件夹(expo init ReloadProject),进入并重新启动那里的expo客户端(expo start),我能够让它“重新加载”代码。
用我的手机访问它(并看到默认的应用程序消息),然后回到我的原始项目,我能够使用较新版本的代码再次启动expo,并在手机上看到它正常工作。
除此之外,我还尝试恢复代码更改,删除node_modules并重新安装,在手机上重新启动计算机和应用程序,手动单击重新加载,尝试热重新加载和实时重新加载,但这些方法都不起作用。
我通过将我的Windows笔记本电脑连接到wifi(与Android设备相同)而不是有线连接解决了我的问题。
尽管wifi和有线网络在同一个局域网上,但其他一切都运行良好。