2017-10-11 186 views
1

我正在研究基於Cordova的混合應用與React Native之間的比較,並且很困惑React Native模塊與Cordova插件有什麼不同?React Native模塊如何與Cordova插件不同?

(在一種情況都相同,那麼爲什麼FB重新發明輪子)

是否陣營本機模塊支持的所有設備都擁有諸如科爾多瓦呢?

感謝, 羅希特

回答

1

的主要區別是,科爾多瓦使用HTML5 + CSS + JS構建混合應用。你的應用程序仍然會在webview中運行。雖然我從來沒有用過它,但我可以發表評論

這是什麼意思?

  • 我不知道關於支持的重要功能,如藍牙,圖形,圖像(核芯顯卡,核心圖像)等核心功能
  • 性能也不會是相同的本地應用

React Native與此不同,因爲它所做的一切 - 將您的JS代碼翻譯爲平臺的本地代碼。表現依然不盡相同,但相對較高。

此外,您還可以使用本機模塊應用程序的情況下,你不能找到別人已創建了一個,所以每一個功能,可以訪問下平臺仍然可以從到達陣營本地

1

是如何作出反應本機模塊不同於科爾多瓦插件?

React Native Modules和Cordova Plugins都執行相同的任務:它們允許調用框架(React Native或Cordova)調用框架中默認不可用的特定本機功能。因此,由React Native模塊提供的原生功能可能與Cordova插件提供的原生功能相同,但它們將具有與上述框架不同的接口。 因此,有可能將公共本機代碼分解出來,並且有一個本地組件可以作爲React Native模塊和Cordova插件使用。

例如react-native-background-geolocation vs cordova-background-geolocation

由於只有本地功能的接口不同,因此嘗試編寫橋接器以允許Cordova插件在React Native中用作模塊,例如react-native-cordova

相關問題