導語:
從小程式開始內測一直到現在,各家公司對小程式業務的開發需求越來越大。開發者在使用原生去開發小程式時很難受,尤其是遇上業務比較複雜的項目,如果仍使用原生開發,會變得很難去管理和迭代。
(學習影片分享:程式設計入門)
使用原生開發的問題:
小程式本身不支援常用的css預編譯器
不支援ES7以上的高階語法,如async await等特性;
- ##不支援工程化,如環境、變數等管理
- 缺少統一的request攔截請求
- #缺少統一的本機快取讀取管理
- 支援css預編譯器
- 支援ES7以上語法
- 支援工程化
- 大部分框架支援多端,一套程式碼多端重複使用
- 徹底的元件化開發能力:提高程式碼多用性
- 完整的Vue.js 開發體驗
- 方便的Vuex 資料管理方案:方便建立複雜應用程式
- 快速的webpack 建置機制:自訂建置策略、開發階段hotReload
- 支援使用npm 外部相依性
- #使用Vue.js 命令列工具vue-cli 快速初始化專案
- H5 程式碼轉換編譯成小程式目標程式碼的能力
##優點:開源時間最早的多端框架,網路上相關的問題和例子較多,適用於工程化和組件化開發專案
缺點:開發團隊基本上不再維護該框架,使用者數量越來越少,且框架本身存在的各種問題經過長時間的迭代依舊沒有解決
taro
優點:支援端能力豐富,開發團隊維護力度大,論壇和官方的問題解決速度快,本身基於微信小程式API開發,微信小程式的支援能力強大
缺點:本身是檔案的靜態編譯,複雜程式碼的轉換的上會產生問題,對H5和行動端的端相容能力比較差
uni-app
優點:開發團隊主推的框架,論壇和交流社區非常活躍,端的兼容能力異常強大,存在特定IDE去兼容框架代碼的書寫規範
缺點:部分代碼未開源,官方問題反饋速度不及時,編輯器綁定
chameleon
優點:規劃完整,統一的多態協議,漸進式跨端,提供了基礎開發腳手架命令工具,幫助端開發者從開發、聯調、測試、上線等全流程高效的完成業務開發
缺點:開源時間短,相關的資料和問題解決方法較少,端相容能力還待完善
選型分析
現有的小程式框架很多,在專案開發中選型要根據業務和專案本身的實際情況選擇
相容微信小程式
如果只是相容於微信小程序,使用wepy、taro、chameleon都可以,因為這些框架的API都是基於微信小程序的,所以對微信小程序的兼容性基本和原生差不多,vue系的開發者可以選擇wepy、 chameleon,react系的開發者可以選用taro。當然一下開發者為了輕巧的開發可以使用glup做工程化以原生的進行開發,不過框架本身雖然增加了包的大小,但是框架在原生基礎上會封裝一下性能優化的點,如setData的重複渲染等。
不選mpvue的原因是因為mpvue的開發團隊已不再維護,而且mpvue在相容微信小程式的複雜業務上也存在部分問題一直沒有解決。
不選uni-app的原因只有一個,不喜歡使用HBuildX
相容多端
如果是要相容多端的話,可以根據相容端能力的需求選擇taro或是chameleon,chameleon雖然開源時間短,但是統一多型協議這個設計理念確實很不錯。 taro是凹凸實驗室重點推廣的項目,在使用過程中可以發現論壇的反饋和交流群的恢復速度還是很及時的,使用taro可以很好的兼容微信小程序,如果要兼容其他端需要在代碼根據端進行特殊處理
總結
小程式框架選型,不過選擇什麼框架,最後都會編譯成小程式可識別的程式碼運行在微信客戶端,根據業務需求選擇小程序框架要搞清楚小程式原生的能力。最後不得不吐槽一下微信開發文件的粗糙,很多關鍵的點描述的都不是很詳細。
相關推薦:小程式開發教學
以上是小程式框架如何選擇的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3漢化版
中文版,非常好用

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能