產品
滴滴 WebApp 團隊近日宣布開源Mpx ,這是一款致力于提高小程序開發體驗的增強型小程序框架。通過 Mpx ,開發者能夠以最先進的 web 開發體驗 (Vue + Webpack) 來開發生產性能深度整站營銷的小程序。
Mpx 具有以下一些優秀特性:
數據響應特性 (watch/computed)
增強的模板語法(動態組件/樣式綁定/類名綁定/內聯事件函數/雙向綁定等)
深度性能整站營銷(原生自定義組件/基于依賴收集和數據變化的 setData )
Webpack 編譯( npm/循環依賴/Babel/ESLint/css 預編譯/代碼整站營銷等)
單文件組件開發
狀態管理( Vuex 規范/多實例/可合并)
跨團隊合作 (packages)
邏輯復用能力 (mixins)
腳手架支持
小程序自身規范的完全支持
支付寶小程序的支持
開發團隊表示,目前業界主流的小程序框架主要有 WePY、mpvue 和 Taro,這三者都是將其他的語法規范轉譯為小程序語法規范,我們稱其為轉譯型框架。不同于上述三者,Mpx是一款基于小程序語法規范的增強型框架,使用 Vue 中優秀的語法特性增強了小程序,而不是讓用戶直接使用 vue 語法來開發小程序,之所以采用這種設計主要是基于如下考慮:
轉譯型框架無法支持源框架的所有語法特性 (如 Vue 模板中的動態特性或 React 中動態生成的 jsx ),用戶在使用源框架語法進行開發時可能會遇到不可預期的錯誤,具有不確定性;
小程序本身的技術規范在不斷地更新進步,許多新的技術規范在轉譯型框架中無法支持或需要很高的支持成本,而對于增強型框架來說只要新的技術規范不與增強特性沖突,就能夠直接支持。
目前 Mpx 框架已經在滴滴內部大量使用,支撐了滴滴出行、青桔單車、街兔電單車、營銷、車服等業務在小程序上的實現,線上運行穩定,收到了大量的好評反饋。未來在對框架進行持續迭代整站營銷的同時會持續跟進微信和支付寶最新的技術標準,同時也會將在更多的小程序平臺上進行適配。
由于設計初衷和專注點在于增強小程序開發體驗,Mpx 并沒有進行跨 H5 甚至是跨 Native 的支持,但現實業務當中確實存在這樣的訴求,未來開發團隊會在Mpx 的基礎上對跨端進行一定的嘗試,與此同時依然會持續維護升級 Mpx ,原因在于跨端意味著靈活性受限及能力的缺失,希望能給用戶提供第二種選擇。
Mpx 與業內主流小程序框架異同對比
p0