“react native”不是原生app,“react native”編寫的程序經過安卓studio編譯后才是一個原生app;原生app的開發(fā)模式是用react的jsx語法來寫的,而“react native”是跨平臺移動應用開發(fā)框架,是Facebook早先開源的JS框架React在原生移動應用平臺的衍生產物,支持iOS和安卓兩大平臺。
本教程操作環(huán)境:Windows10系統(tǒng)、react17.0.1版、Dell G3電腦。
react native不是原生app
react native 編寫的程序經過安卓studio編譯后就是一個原生app ,其開發(fā)模式是用react的jsx語法來寫的,特別像寫前端一樣,寫頁面結構/寫js/寫一種類似css語法的但不是css,這些可以渲染到寫的頁面組件里。
React Native (簡稱RN)是Facebook于2015年4月開源的跨平臺移動應用開發(fā)框架,是Facebook早先開源的JS框架 React 在原生移動應用平臺的衍生產物,支持iOS和安卓兩大平臺。RN使用Javascript語言,類似于HTML的JSX,以及CSS來開發(fā)移動應用,因此熟悉Web前端開發(fā)的技術人員只需很少的學習就可以進入移動應用開發(fā)領域。
擴展知識:
JSX就是Javascript和XML結合的一種格式。React發(fā)明了JSX,利用HTML語法來創(chuàng)建虛擬DOM。當遇到 <,JSX就當HTML解析,遇到 { 就當JavaScript解析。
react native 編寫的程序經過安卓studio編譯后就是一個原生app ,其開發(fā)模式是用react的jsx語法來寫的,特別像寫前端一樣,寫頁面結構/寫js/寫一種類似css語法的但不是css,這些可以渲染到寫的頁面組件里。
react native 玩的也是組件,在node和npm環(huán)境下,可以創(chuàng)建一個react native項目,其依賴也是來源于node_modules ,packge.json 也是一個插件安裝的列表。react native是一個原生程序,不需要使用到web pack。但是少不了jdk 和andoird環(huán)境的配置和相關資源下載/相關集成工具的使用。
react native 的基本結構和語法
index.js
app.js
//一般在app.js里寫的都是頂層路由,在這里可以做一個路由頂層設計,這個app.js是在index.html里面設置的。所以開始就會渲染這個組件 ,其后就是各個子組件的引入和使用,每個組件都是先引入react的資源,或者引入自己寫的組件,每個組件都是通過一個默認導出類作為加載的頁面,這個類有構造函數,有成員函數,有渲染函數。還有一個react native 資源里面的 StyleSheet對象這個對象專門寫組件樣式的。
構造函數里面有state這個state叫做狀態(tài),用來操作組件狀態(tài)的。在這里state里面設置狀態(tài)屬性,通過狀態(tài)屬性可以做很多靈活的操作。成員函數可以操作這些在構造函數里面設置的狀態(tài)屬性。渲染函數就是render ,這個函數里面可以引用引入的資源的組件,而寫一個更大的組件。一個大概的react native 組件就是這樣來完成業(yè)務的。代碼可以根據自己的需求和官方文檔的語法去寫。
【