學習 React Native 7
JSX 和 React Native
在React Native 中,我們就同在 React 中一樣,使用JSX來寫視圖控件, 混合著標記代碼和腳本文件把視圖控件的代碼放在一個單獨的文件中。 在React 剛開始研發之時,JSX機制遭到強烈的抵制。對于大部分的網頁開發人員來說,每個獨立的文件都是基于所使用的不同的技術:大部分程序員都會把 CSS, HTML 以及 JS文件放在不同的文件結構中去。 這種把標記語言,控制邏輯甚至是樣式文件都放在統一的一種語言中做開發很容易讓人搞混淆。
當然,使用JSX的理由就是他已經能夠在不同的技術層面上為各種不同的關注排列優先級。 在React Native中,這個策略更為增強了。 換句話說,無須借助瀏覽器,React Native 都能夠更好的在同一個文件中協調處理每一個控件的樣式,標記語言以及他的行為。因此,在React Native 中,您的.js 文件實際上就是JSX 文件。當您在使用React 做網站開發時,使用的是Vanilla Javascript, 那么您得把JSX 語法轉換到您的React Native 項目中去。
考慮宿主平臺的API.
也許React 和React Native 之間最大的區別在于我們考慮宿主平臺的API的方式并不相同。 在網站上, 要處理這些問題基本上都是碎片化的,不邊續的標準方式; 仍然,大部分瀏覽器還是支持共享的功能的核心基礎。 然而,在使用 React Native 時,在創建優秀的,自然流暢感覺的用戶體驗時,平臺規范的API 則扮演的重要的角色。 這里仍然還有很多選項需要考慮。 移動 API 包括了從數據儲存,到位置服務,到硬件訪問,比方使用相機功能等一切功能。 由于 React Native 的主要目的就是為了向其它更多的平臺擴展,所以我們也可以預見這里有各種各樣不同的APIs; 那么舉例來說,對于這些處于React Native 以及虛擬現實的耳機之間的接口應該是什么樣呢?
默認的, iOS版本的 React Native 包括支持了絕大多數的正在使用的iOS 的功能,同時,React Native 也能支持任何一個異步原生的 API. 在本書中我們會學習大部分的 API. 如果您以前是做網頁版本的開發工程師,那么這些數組的選項會一開始會讓您不太適應。 幸福的是, React Native 讓我們使用宿主平臺的API變得直接且簡單了, 您可以自由的去感受下。確保對于您的目標平臺來說,考慮他們正確的感覺,在腦海中利用自然交互去設計您的程序。
不可避免的是,React Native 的橋接口并不能完全對接上所有的宿主平臺的全部功能。 如果您發現了一個您要使用的不被支持的功能,您可以選擇自己來編寫代碼來處理。 另外,也存在極大的可能就是別人已經把這工作做了。所以時不時去查查社區里的相關信息,看看有人是否已經或者快要發布您想要的功能接口了。
還有一個特別值得關注的點就是使用宿主平臺的API 也暗示著要好好利用下代碼復用。需要平臺規范的功能的那些 React 組件也一定是很符合平臺規范的。 分離并封裝這些組件將為您的應用程序帶來很大的靈活性。 當然這些也可以應用在一般網頁上:如果您打算在React 和React Native 之間共用代碼,一定要記住,象文檔對象模式這一類的東西其實在React Native 中是不存在的。
總結
React Native 提供了一種新的讓人著迷的方式,在目標平臺上使用 JavaScript語言。 對于那些熟悉React 的網站開發工程師, React Native 誘惑著他們這個新的機會可以快速的開發他們的移動應用程序,而無須投入太多經費。 其實現在已經存在了很多和React Native 一樣的解決方案了,就如同那未知的世界等我們去探索。
為了能更充分的發揮React Native的長處, 您需要了解一些相關的知識。 好消息是您以往的React 的相關工作經驗可以為您奠定一個堅實的基礎,幫助您成功的使用 React Native. 下一個章節我們就會開始真正的寫一個在iOS上運行的 React Native 的應用程序了,我想您一定會對這種在家里就可以完成全部的移動開發任務而感到吃驚了。我們將從最基礎的知識開始,帶您站起來,最后能完全跑起來,同時也會指導如何調整您已經具備的關于React 的知識,以便于您能快速的掌握React Native在移動應用上的開發。到了最后一章,您就完全可以把一個很強壯的應用布署到蘋果的應用商店了。
不深思則不能造于道。不深思而得者,其得易失。
名人名言- 曾國藩
- By 優聯實達
- 2015-11-19
- 1386
- 公司新聞,網站開發,網站設計,UI