用JS開發移動原生應用,非死book正式開源React Native!

mgwd 9年前發布 | 35K 次閱讀 React Native

用JS開發移動原生應用,非死book正式開源React Native!

在經過前一天 Messenger 應用平臺、Parse 物聯網開發者工具等驚喜的轟炸,非死book 于今天凌晨在 F8 開發者大會上正式開源了 React Native。不過目前,只有 iOS 版,Android 版還需要再等一段時間,這是最新的用 JavaScript 語言開發原生 App 的嘗試,其示例代碼相當簡潔,內置控件也不少。同時還為 React Native 開發了一款基于 Atom 的 IDE——Nuclide,也已開源。 

React Native 主要特性如下: 

  • 原生的 iOS 組件

React Native 主張“Learn once, write everywhere”而非其他跨平臺工具一直宣揚的“Write once, run everywhere”。通過 React Native,開發者可以使用 UITabBar、UINavigationController 等標準的 iOS 平臺組件,讓應用界面在其他平臺上亦能保持始終如一的外觀、風格。 

    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> ); }, });  

異步執行

JavaScript 應用代碼和原生平臺之間所有的操作都采用異步執行模式,原生模塊使用額外線程,開發者可以解碼主線程圖像、后臺保存至磁盤、無須顧忌 UI 等諸多因素直接度量文本設計布局。 

用JS開發移動原生應用,非死book正式開源React Native!

觸摸處理 

React Native 引入了一個類似于 iOS 上 Responder Chain 響應鏈事件處理機制的響應體系,并基于此為開發者提供了諸如 TouchableHighlight 等更高級的組件。 

    var React = require('react-native'); var { ScrollView, TouchableHighlight,  
            Text } = React; var TouchDemo = React.createClass({ render: function()  
            { return ( <ScrollView> <TouchableHighlight onPress={() =>  
            console.log('pressed')}> <Text>Proper Touch Handling</Text>  
            </TouchableHighlight> </ScrollView> ); }, });  

非死book 在 React Native 的主頁上詳細介紹了 React Native 的種種功能特性,想要了解更多細節,可直接進入主頁查看,而其為 React Native 搭配的開源 IDE Nuclide 支持 React Native、Web 和原生移動開發,基于 Atom 構建,不過也需要FQ。 

用JS開發移動原生應用,非死book正式開源React Native!

React Native Github 托管地址:https://github.com/非死book/react-native

來自: www.iteye.com
 本文由用戶 mgwd 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!