安装相关工具参考(视频):http://ninghao.net/course/3001?a=26
学习参考:http://reactnative.cn/
今天是让我非常兴奋的一天,发现了一个非常好的一些网站
最近非常流行一个叫React Native。“Learn once, write anywhere(Android,IOS,WEB)”
React Native项目成员Tom Occhino发表的React Native: Bringing modern web techniques to mobile详细描述了React Native的设计理念。
可以通过不同的渲染引擎生成不同平台下的UI,JS和Native之间通过Bridge通信。
其实这东西从Native开发来说,相当于重新发明了一个浏览器渲染引擎并且套一个React的壳,从Web开发角度来说,就是把原来React的后端换成了Native code来实现,就跟Flipboard最近搞的React Canvas 一样
为什么需要 React Native?
What we really want is the user experience of the native mobile platforms, combined with the developer experience we have when building with React on the web.
根据ProgVille的文章,React Native的原理是,在JavaScript中用React抽象操作系统原生的UI组件,代替DOM元素来渲染,比如以<View>取代<div>,以<Image>替代<img>等。
在幕后,React Native在主线程之外,在另一个背景线程里运行JavaScript引擎,两个线程之间通过一批量化的async消息协议来通信(有一个专门的React插件)。
UI方面React Native提供跨平台的类似Flexbox的布局系统,还支持CSS子集。可以用JSX或者普通JavaScript语言,还有CoffeeScript和TypeScript来开发。有评论说,React的UI层模型要比UIKit好很多。