前言
近期在学习React Native 特开始着手遇到问题的解决方案,有问题及时留言,谢谢!!!
问题1:run 项目时遇到命令窗口出现:TypeError: Cannot read property 'root' of null
解决:打开终端,输入 brew update成功后再输入brew upgrade watchman关掉Xcode重新运行即可。
问题2:native 的(RCTResponseSenderBlock)callback注意回调的参数设置。
例如:callback(@[@"hello"]);
js端:
callback: function(ret) {
if (ret[0]) {
console.log(ret[0]);
}
},
打印结果为:h,如果改为callback(@[@[@"hello"]])打印结果才为hello。
问题3:iOS项目jsbundle打包,release包的js代码是混淆的。可以更改/Users/arnold/HFRCTUpdaterDemo/node_modules/react-native/local-cli/bundle/buildBundle.js 下的minify的选项。
临时方案:直接更改../node_modules/react-native/packager/react-native-xcode.sh 中的--dev true即可,注意该命令的执行必须在ios的文件夹中。
问题4:iOS和安卓对图片处理的区别。
iOS:
this.setState({source}),更改Image的资源。
安卓:
this.setNativeProps({src:''}),更改资源。
问题5:native 的(RCTResponseSenderBlock)callback注意回调的参数设置。
例如:callback(@[@"hello"]);
js端:
callback: function(ret) {
if (ret[0]) {
console.log(ret[0]);
}
},
打印结果为:h,如果改为callback(@[@[@"hello"]])打印结果才为hello。
问题6:react native 调用组件报错:invalid directory /Users/node_modules/
解决:注意@providesModule 的重要性
问题7:NPM throws error “couldn't read dependencies”?
解决:sudo npm install -g npm
问题8: No compatible version found: react-native-viewpager@^1.2.1
解决:
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
问题7: 最新新建项目运行又遇到老问题:react native could not connect to the http server
一时半会想不起来之前的解决方案,网上搜索一下才恍然大悟。
iOS 9.0 的https的影响,解决方案:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>