安装问题

首先,应该就是安装的问题,第一步往往会劝退99%的人。绝大部分人肯定是跑不起来的,如果在初次跑的时候,看见报错信息里面有地址,百分之百是代理的问题,使用React Native必须用代理,而且一般的代理只是针对浏览器,需要额外配置支持命令行才行。如果你默认demo跑不起来,那就是代理问题,一定要选一个好的翻墙工具,否则,这个技术栈你直接可以放弃了。

React Native开发与普通Web开发

我只能说,这完全是两个东西,看起来像,里面完全不一样,我下面会列一些常见的区别,大家就不用踩坑了。

  1. React Native的文字必须得用Text标签进行包裹,否则会报错
  2. React Native想要修改文字颜色,必须把color属性放置在Text标签上,放置在View标签上完全没用。
  3. React Native的View标签没有点击事件,一般需要结合TouchableOpacity这个东西来做onPress事件
  4. React Native的position没有fixed属性,也没有sticky属性,只有absolute和relative属性,这意味着很多东西的架构设计模式完全不一样。
  5. React Native的Button按钮完全不支持样式的修改,如果你想要改样式,没办法,换成TouchableOpacity加View的形式吧
  6. React Native的路由架构完全和Web端不一样,大家在使用过程中要注意坑,特别是做tabbar的时候

React Native总结

React Native这个库,看起来非常牛逼,还使用到了React框架,但是很多能在编译层做好的事情,它偏偏不在编译层去搞定它,而把它上抛到了开发一层,比如Style的处理,完全可以利用less这一类的工具,然后结合编译层去把它搞定,比如View点击事件的处理,完全可以把它在编译层做底层兼容处理,但官方也没做,就最近两周上手的体验来说,React Native是跨端上性能比较好的,但是在Web开发人员的体验上来说,它是做得非常差的。