react-native踩坑

could not get batchedbridge make sure

  • 上传到github时会忽略assets文件夹,可能需要每次都执行

  • 解决: cd到项目的根目录,执行

      react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
    

npm安装模块出错 ERRWindowNT6.1.7601

  • 解决:
    npm config set proxy null
    npm config set https-proxy null
    npm config set strict-ssl false
* 成功
* > 参考自[https://segmentfault.com/q/1010000006696165/a-1020000006779353](https://segmentfault.com/q/1010000006696165/a-1020000006779353)

图片变动需要新启动packager

react-native-router-flux

修改项目目录

  • 将index.android.js和index.ios.js中一起改为

      require('./src/app');
    
  • webstorm中在项目跟目录创建src文件夹,右键new,创建JavaScript File,写入代码即可

修改tabbar背景色为透明

tabBarOptions: {...
    indicatorStyle: {
        backgroundColor: 'transparent'
    },
}   

参考自https://github.com/react-community/react-navigation/issues/788

修改tabbar图标与文字间距

  • 在tabbartabBarOptions的labelStylle设置,而不是通过图片设置

执行结果为上一次的代码

  • 确保设备与电脑在同一个wifi下
  • 确保Dev Setting里设置了正确的主机IP

react-native-swiper

  • 宽高依靠属性设置

循环时需要加key

引入项目

//模块
class MyModule
...
export default MyModule;//export default也可以放在类名前(推荐)

//引入
import moduleA from './.../MyModule'
class Home...
<MyModule>

弃:

export default class MyModule
...
module.expoports = MyModule;
var moduleA = require('./.../MyModule');

用StyleSheet.hairlineWidth代替小于1的尺寸

过时

  • mixin
  • React.createClass

ES6

  • 先class,后static/const

object object

  • 解决:控件有没开头大写的

三方包的问题,优先找github上的issues

Unable to resolve module react/lib/ReactComponentWithPureRenderMixin

  • 作者在1.0.0-beta7版本中的header.js中多加了一行引用mixin的import
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容