簡體   English   中英

在React.js和React Native應用程序之間重用代碼

[英]Reuse code between React.js and React Native applications

我想重用一些代碼,從兩個應用程序的API中檢索數據。 一個是使用React Native的iOS應用程序。 另一個是使用React.js的網站。

我最初編寫了在構建iOS應用程序時從API檢索數據的類。 因此,我使用了React Native中提供的fetch方法。

不幸的是,在React.js中沒有這樣的方法。 如果我想重用我的代碼,我最好的選擇是通過使用方法fetch創建一個類HTTPRequests來抽象React Native的fetch方法的調用,該方法將調用React Native的fetch方法或'$ .get'方法,具體取決於lib項目使用:React.js或React Native。

我的問題如下:如何在項目中檢測到React.js或React Native的使用。 我的第一個想法是檢測我的JS代碼是通過RCTRootView引擎還是瀏覽器執行的。 但我不知道如何做到這一點。

有什么建議嗎?

謝謝!

我的建議是將共享邏輯移動到單獨的模塊(bower,npm,ES6),概括通過fetch polyfill請求數據的方式,並且永遠不會在項目中檢測React / React.native。 當新版本的React / React.native出現時,JS代碼檢測將使您的代碼變得不必要復雜且難以支持。

我使用React Native 的特定平台的擴展功能,使用React和React Native構建跨平台應用程序的成功經驗。 我剛剛描述了如何構建代碼以便在React和React Native應用程序之間的博客文章代碼共享中實現這一點

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM