開發ReactNative前必須知道的幾件事

玄學醬發表於2017-10-20
本文講的是開發 React Native 前必須知道的幾件事,

No. 1 讀文件(一定要讀)

1 我之所以把它列在第一位是因為這真的是最節省時間的一條。等你真正讀了文件,尤其是“指導”這節,那麼我相信你應該會對下面的大部分建議有所瞭解。但人們更願意通過實踐學習而不是讀文件-我之前也是這樣做的。我浪費的大把的時間在下面的事情上,而不是讀文件。因此我希望這篇文章可以節約你不少的時間。

No. 2 檢出並執行 UIExplorer 專案

React Native 文件沒有快速演示(由於框架本生原因)或者是 UI 元件和 API 的截圖。因此弄清楚每個元件具體的樣子和功能有些困難。這就是他們為什麼提供了這個非常有用的 UIExplorer Project專案。它真的可以節省你很多猜測和嘗試的時間。

NO. 3 選擇合適的導航元件

我不得不承認我浪費了大量的時間在把我的程式碼從NavigatorOS 和 Navigator 之間來回切換 。事實React Native 提供了相當詳細的對比 ,當然在我把時間浪費之前我也沒讀過它。簡而言之就是 NavigatorOS 更像原生的元件,但提供了有限的 API 並且 bug 比較多。

No. 4 你的程式碼不是執行在 nodejs 上的

你的 javascript 執行時要麼是 JavaScriptCore(不支援 dubug) 要麼是 V8 (可以 dbug)。儘管,你使用 NPM 並且有一個 node 服務 在後臺執行,但你的程式碼並不是真正執行在 nodejs 上的。因此是不可以使用 NodeJs 包的。一個典型的例子就是jsonwebtoken,它用了 NodeJs 的 crypto 模組。

No. 5 推送通知很不靠譜

在 React Native 中推送通知很不靠譜。這項特性是在 0.13 版上是能有效使用的,但你得在你的 Xcode 工程中配置好你的專案(新增庫,新增標頭檔案等等)。官方文件相當簡要。在 0.12 版或者之前的版本中甚至對後來的 IOS 版本不支援。你需要自己打補丁來實現。這篇文章相當有用。

No. 6 靜態圖片暫時只支援 PNG 格式

這樣的要求是簡單易懂的,但想要明白箇中緣由,絕非易事。直到最近的[文件](https://facebook.github.io/react-native/docs/image.html)中才提及這點。浪費了我好多時間。

Modal 構件是專門為混合 React Native 框架和 Native 應用而度身定做的。因此,很多 React Native 框架下的構件都不能與Modal相容使用。PickerIOS無法渲染的問題。

No. 7 讀原始碼

React Native 發展的很快,以至於文件過(包括這篇文章)很快就失去參考價值了。許多的特性(比如鍵盤事件,EventEmitter以及Subscribable) 都沒有寫在文件裡。因此,為了更清楚如何完成屬於自己的構件,你必須事先通過閱讀原始碼來了解 React 是怎樣實現的。

No. 8 學習Objective C

遲早你會用到 Objective C 的。對於任何優秀的app,寫原生模組和元件都是不可避免的。因此,至少你得能讀懂 Objective C 程式碼。我知道這可能有些嚇人,但一旦你習慣了它的語法就好了。





原文釋出時間為:2016年01月07日

本文來自雲棲社群合作伙伴掘金,瞭解相關資訊可以關注掘金網站。


相關文章