NativeScript的竞争者React Native:又一个用JavaScript写原生iOS应用的项目


发布者 ourjs  发布时间 1427693427027
关键字 JS开源  开源 
注* 除了服务器端的解决方案node.js外, JavaScript在桌面应用端也有着比较稳定可靠的应用解决方案,如 nw(node-webkit) 、atom-shell 等。不过在手机端应用方面,类似PhoneGap这样内嵌WebView的解决方案在性能和功能方面一直有着很大的局限性,JavaScript程序员一直无法很好地渗透到这个领域,在这个背景下 NativeScript 和 React Native项目分别孕育而生。

几个月前,Facebook宣布启动 React Native 项目,,一个可以让你使用JavaScript构建原生的iOS应用程序的框架 - 其官方代码托管仓库,宣布开始公测(Android版应该还在开发中)。

人们过去数年一直通过 PhoneGap 的封装来实现用JavaScript和HTML5创建iOS应用程序,但为什么社区会对React Native作出这么大的反应?

注* 也许是受到 Telerik 的 NativeScript 的压力, React Native的推出显得有点仓促。NativeScript 已经支持Android和iOS平台,还正在添加对Windows的支持; 但React Native目前仅支持iOS平台,二者均使用JavaScriptCore作为iOS上的JavaScript解释器。但由于Telerik一直是销售商业应用解决方案的,而Facebook有着良好的开源传统,加上ReactJS已经积累了相当人气,开发者普遍对 React Native 明显怀有更大的热情,宣布首日就积累了8K+个Star。

React Native将会是一个很重要的项目,人们对它非常期待,主要有两个原因:

1. 通过React Native,你的应用程​​序逻辑编将使用JavaScript编写并运行,而您的应用程序用户界面则完全是原生的; 然后你没有办法使用HTML5来绘制UI,这是一个妥协。

2. React引入了一种新的,激进的,功能强大的方式来构建用户界面。简而言之,应用程序的UI被简单地表示为当前应用的状态(Model)。

React Native最关键的一点是,它的主要目的是将 React 编程模型应用于移动应用程序的开发。它的目标不是跨平台,一次编写随处运行。它的目标只是在任何地方都用一个框架。


原生的iOS组件

通过React Native,你可以使用标准的平台组件,如iOS上的UITabBar和UINavigationController。这使您的应用程序有着与平台原生应用一致的外观和感觉,并保持较高的质量。这些组件在React Native非常容易使用,如将TabBarIOS和NavigatorIOS集成到您的应用程序中:

var React = require('react-native');
var { TabBarIOS, NavigatorIOS } = React;

var App = React.createClass({
  render: function() {
    return (
      <TabBarIOS>
        <TabBarIOS.Item title="React Native" selected={true}>
          <NavigatorIOS initialRoute={{ title: 'React Native' }} />
        </TabBarIOS.Item>
      </TabBarIOS>
    );
  },
});







回复 (3)
  • #
  • #1 eeer 1427821426780

    gjhfj

  • #2 steben 1443423226724

    66666666666666

  • #3 keatkeat87 1471681848563

    有点懂了

微信扫码 立即评论




 热门文章 - 分享最多
  1. NativeScript的工作原理:用JavaScript调用原生API实现跨平台
  2. 6款基于Node.JS的开源内容管理和静态网站生成系统
  3. Session劫持与Session-ID的安全长度
  4. 用原生HTML5控件实现输入框自动提示(下拉列表补全)功能
  5. 微软,IBM,ARM等大公司先后加入对Node.js/io.js的支持
  6. 微软博客:Angular 2将基于TypeScript
  7. history.js 一个无刷新就可改变浏览器栏地址的插件(不依赖jquery)
  8. 使用Google Analytics跟踪捕获JavaScript,AngularJS,jQuery的在线错误和异常
  9. AngularJS和$scope.$apply()用法的最佳实践
  10. trim-html:NodeJS的HTML文本截取库(自动生成正文摘要)

 相关阅读
  1. 6款基于Node.JS的开源内容管理和静态网站生成系统
  2. trim-html:NodeJS的HTML文本截取库(自动生成正文摘要)
  3. history.js 一个无刷新就可改变浏览器栏地址的插件(不依赖jquery)
  4. 使用Node.JS监听文件夹变化
  5. 服务器端(NodeJS)使用jQuery选择器操作DOM(HTML/XML)
  6. Oracle发布官方版Node.JS数据库驱动
  7. 用JavaScript实现的Flash VM播放器(虚拟机)
  8. Chartist.js:一个开源的响应式前端矢量(SVG)图表库
  9. JavaScript中数学运算的安全范围及开源大整数高精度计算库
  10. Webaudio-mod-player:用HTML5音频接口播放mod音乐文件

  开源的 OurJS
OurJS开源博客已经迁移到 OnceOA 平台。

  关注我们
扫一扫即可关注我们:
OnceJS

OnceOA