四墩莫、React Native
React Native里面沒有webview裕菠,它不是Hybrid app丙笋,里面執(zhí)行JS是用的 JavascriptCore鱼蝉。
把Native code十來個(gè)最基本核心的類(RCTDeviceEventEmitter、RCTRenderingPerf等)院尔、或組件(RCTView蜻展、RCTTextField喉誊、RCTTextView、RCTModalFullscreenView等)封裝成二十來個(gè)基本組件(Popover纵顾、Listview等)
實(shí)現(xiàn)了一套類似css的子集伍茄,用來解決樣式問題,相當(dāng)復(fù)雜和強(qiáng)大施逾,靠這個(gè)才能將Native的核心組件組成JS層的基本組件再組成業(yè)務(wù)端的業(yè)務(wù)組件
在React Native中敷矫,寫JS的工程師解決的是「將基本組件拼裝成可用的React組件」的問題,寫Native Code的工程師解決的是「提供核心組件汉额,提供足夠的擴(kuò)展性曹仗、靈活性和性能」的問題。
React Native工作原理:
為什么要使用React Native
不用Webview闷愤,徹底擺脫了Webview讓人不爽的交互和性能問題整葡。
有較強(qiáng)的擴(kuò)展性件余,這是因?yàn)镹ative端提供的是基本控件讥脐,JS可以自由組合使用。
可以直接使用Native原生的「牛逼」動(dòng)畫啼器。
可以通過更新遠(yuǎn)端JS旬渠,直接更新app。