taro框架微信小程序端應用實踐

1.Taro框架

 keywords:跨端;跨框架 ;支持redux

跨框架:前端框架 React/Vue都支持, 還額外支持NervNerv 和Taro都來自於凹凸實驗室,Nerv是高性能類 React 框架);所以沒有學過小程序開發框架(包括但不限於微信)的同學,藉助Taro,可以零學習成本快速開發小程序項目。

跨端:Taro 需要運行不同的命令,將 Taro 代碼編譯成不同端的代碼(原生手機app,H5,微信/百度/支付寶/字節跳動/京東/小程序/QQ小程序)下圖來自 https://taro-docs.jd.com/taro/docs/GETTING-STARTED         

大部分前端開發同學,可能不清楚,爲什麼有RN(IOS)與RN(Android)這兩種端?那是因爲,現在前端市場很少有開發原生App的需求,或者要在原生App中嵌入單獨的一個H5功能頁面以至於要實現hybrid app的需求。2014年左右Facebook的react-native 框架很火,那個時候,市場上大部分的app都是用原生Android和Ios語言構建的移動端應用,但由於原生移動端應用開發與發佈成本高(現在前端都享用mvvm這種數據驅動的框架的便利,很少人能理解android原生開發那個時候mvp模式的痛;加上現在開發應用都部署在雲平臺,繞過了安卓/蘋果市場,產品迭代更新的響應速度可以很快,整個軟件開發的流程非常的smooth)。

所以,Taro實際上真正的實現了跨所有端。

我的項目情況是要開發微信小程序,我很清楚自己不想花任何時間在微信小程序框架的學習上;又由於我最近一年的技術棧的react,切換會原來vue基本上忘的差不多了,而且還要學習3.0新語法,用vue寫項目必然項目磕磕巴巴;綜合這兩個原因,我明白我要選擇的是支持react的微信小程序開發框架。至於是什麼導致我最終選擇Taro了呢?我看到了支持redux的時候我就愛上了它❤️。第二部分是關於微信小程序開發框架的技術選型。

2.微信小程序開發技術選型

假如你跟我一樣,只要想開發微信小程序項目,Taro可能並不也是你的最優選擇。更詳細一步的講,假如你的項目一定要/可能會用到狀態管理,並且你只熟悉是vuex,又不想學習redux,那我覺得mpvue應該是你的首選。參考來自https://www.jianshu.com/p/dfb8c00d1057。我從這篇技術選型的文章中簡單摘出來了各種框架發展史和技術選型對比圖供你快速預覽。

文章原話:對於小程序開發者來說,小程序的開發生態不斷地在完善,從最開始的原生框架,到騰訊自己開發類vue規範的wepy,再到美團開發近vue寫法的mpvue,再到最近O2實驗室剛推出的遵循React規範的Taro

技術選型原圖:

 

對。其實技術選型無非就要考慮:

(1)自己有沒有技術積累?

       你是不是受限於一種前端開發語言?你只會用vue,還是react? 狀態管理組件只會vuex,還是redux?

      不過應該大部分的技術棧是vue+vuex/react+redux就已經滿足職位的要求了。假如你對他們都很熟悉,你其實會在其他方面關注更多,比如說你會選擇儘量豐富靈活的ui組件來支撐你的項目。

(2)學習能力與項目週期怎麼樣?

      爲什麼這個是很非常重要的因素呢?

     如果公司對你比較仁慈,是抱着培養你的心態來給你項目做的,你大可以勇敢的選擇你不熟悉的框架進行實踐。前端最重要的就是技術積累與沉澱,業界常見的幾種框架,多瞭解將會加深你對前端行業的瞭解。

     如果你也是個打工仔,那肯定是要講究你能不能按時的完成項目。到底是kpi比較重要,自我能力提升只能靠私下擠時間了。

(3)核心功能要先考慮

      還是要多看適合自己項目情況的技術選型方面的文章,避免在重大功能上,遇到坑!

      順便說一下,taro支持echart

(4)UI框架

   選擇儘量豐富靈活的ui組件來支撐你的項目。 怎麼判斷?最簡單的方法,一個個點開組件看,跟自己的UI 相似度怎樣?

   儘量選擇社區活躍度比較高的前端組件框架。

3.本地開發與調試

在vscode中code以及編譯;用微信開發者工具打開dist文件夾預覽。具體參考 https://taro-docs.jd.com/taro/docs/GETTING-STARTED

4.講講taro-ui

組件不夠豐富,靈活性還是比較很差。物料市場很難找到跟自己相似的業務組件。

我會不斷開源一些基於tarojs/components組件構造的輕業務組件。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章