React Native教學 Part 2.5 - 選擇Navigation Library

2018/04/30 posted in  React Native comments

在Web app中,router負責處理url的改變,redirect頁面去各個page。在Mobile app的世界,這種功能更常稱為navigation。

I. Navigation發展史

百花齊放

以前的React Native community有很多各式各樣的navigation library:

React Native Core:

Community:

React:

還有很多很多...

官方欽定的React Navigation

當然百花齊放的後果就是很多都未達到production-use的要求,很多時候各library都會有自己的limitation和bug。

最後在2016年,ex-navigationnavigation-rfc合併成為了react-navigation

然後Facebook也在官方文檔中推薦使用React Navigation,整個community都開始圍繞這個Library發展。

II. 現時推薦的Navigation Libraries

(React Native世界變化得太快,本篇下筆日期為2018-05-01,日後可能有所變動。)

react-navigation

wix/react-native-navigation

提供真正ios/android原生的navigation、官方文檔也有提及

aksonov/react-native-router-flux

(Now v4 based on React Navigation)

"Every new major version of RNRF is based on different navigation framework and mostly preserves own API."

III. 結論

React Native的libraries一直都變化得很快,可能不出一年半載又有新的navigation推出。但如果你是現在要投身開發RN app,我會推薦React Navigation,因為:

  1. 最多Github stars
  2. 官方推薦,只會越來越多人用
  3. 完全JS-based,所以Expo apps也可以用

下一篇:React Native教學 Part 3 - Component