今天在寫一個簡單的RN的Demo時,一連出現了好幾個錯誤,最后幸虧得以解決,在這里把我踩過的坑以及解決辦法分享出來:
1.運行出現錯誤:Could not connect to development server.
error.png
解決辦法:
請將項目中 AppDelegate.m 中的
jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle?platform=ios&dev=true"];
改為
jsCodeLocation = [NSURL URLWithString:@"http://127.0.0.1:8081/index.ios.bundle?platform=ios&dev=true"];
原因:做本地局域網開發環境,大部分都會做服務器映射處理,localhost 被指向特定的IP 而不是本機的127.0.0.1, 就會出現這樣的問題。
2."Unable to resolve module XXX from ......." in react native
出現這樣的錯誤提示有兩個原因,一個是你的依賴沒有完全安裝,另外一個就是你的文件里的代碼沒有寫對,比如英文字母寫錯等。
如果是依賴沒有安裝,可以參考以下命令:
npm i XXX --save 或者 npm install
然后關掉終端,重新運行。
3.ios9 https機制下連接網絡辦法:
先在Info.plist中添加NSAppTransportSecurity類型Dictionary.
然后在NSAppTransportSecurity下添加NSAllowsArbitraryLoads類型Boolean,值設為YES.
4.切記,我的大多數錯誤就是代碼寫錯,居然找了半天原因,笑哭了。。。。。。
5.TabBarIOS底部的圖標資源放在Xcode工程文件中方能顯示出來。
6.React-native中在某些內頁如何隱藏TabBarIOS的辦法:
- 文件: RCTWrapperViewController.m
- 方法: - (void)viewWillAppear:(BOOL)animated
- 插入下面一句:
self.navigationController.tabBarController.tabBar.hidden=self.navigationController.childViewControllers.count>1?YES:NO;
7.安裝react-native-icons插件,在項目的根目錄下執行
npm install react-native-icons@latest --save
下載完成后可以在node_modules目錄下看到該插件。
參考地址:http://blog.csdn.net/itfootball/article/details/48710827
8.iOS模擬器運行后顯示黃色的警告框 怎么能讓它不顯示:
AppDelegate.m中的
[NSURL URLWithString:@"http://127.0.0.1:8081/demo/index.bundle?platform=ios&dev=false"];
其中,dev改成false,即可。