ReactNative從入門到放棄

1、iOS啟動模擬器出現如下錯誤信息

Application XXX(項目名) has not beenRegistered. This is either due to a require() error during initialization or failure to call AppRegistry.registerComponent

原因:

1、AppRegistry.registerComponent('項目名',() => 項目名); *
與./ios/項目名/appDelegate.m中的RCTRootView*rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation moduleName:@"項目名" initialProperties:nil launchOptions:launchOptions];

解決辦法:

1、項目名稱全部統一即可。
2、若不同,后兩個項目名為root的類名。

2、本地服務沒有啟動,或者端口被占用。

解決辦法:

1、到當前proj目錄下,react-native start,啟動本地服務。
2、如果出現 ERROR Packager can't listen on port 8081。
3、使用命令 lsof -i:8081 ,查看這個端口是否被某個進程占用。
如果被占用,會有信息輸出如下。

? ~/Desktop/TabBarDemo/ [master] lsof -i:8081
COMMAND   PID    USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
node    32146 Jueying   24u  IPv6 0x75456f5cb82f8085      0t0  TCP *:sunproxyadmin (LISTEN)

如果沒有被占用,則不會輸出任何信息。
4、如果8081這個端口被占用,使用命令:kill -9 8081 ,命令將這個進程干。
5、command + r,刷新模擬器. 已ok。

2、錯誤信息Command "run-ios" unrecognized. Did you mean to run this inside a react-native project?

解決辦法:

1、到當前proj目錄下,使用命令:npm install即可。

寫在結束。。。

學習ReactNative已有1月有余,簡單的頁面布局和網絡請求,已經很熟悉。正準備適配安卓時,微信小程序又冒出來了,來勢洶洶,很真切的感受到了從入門到放棄。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容