首頁 >web前端 >Vue.js >微信小程式能不能用vue.js

微信小程式能不能用vue.js

coldplay.xixi
coldplay.xixi原創
2020-11-09 10:40:228363瀏覽

微信小程式能用vue.js,mpvue是一款使用【Vue.js】開發微信小程式的前端框架,使用此框架,開發者將得到完整的【Vue.js】開發體驗,同時為H5和小程式提供了程式碼復用的能力。

微信小程式能不能用vue.js

【相關文章推薦:#vue.js##】

微信小程式可以用vue.js

mpvue是使用Vue.js 開發微信小程式的前端框架。使用此框架,開發者將獲得完整的 Vue.js 開發體驗,同時為 H5 和小程式提供了程式碼重複使用的能力。如果想將 H5 專案改造為小程序,或開發小程式後希望將其轉換為 H5,mpvue 將是十分契合的一種解決方案。

小程式開發特點

微信小程式推薦簡潔的開發方式,透過多頁聚合完成輕量的產品功能。小程式以離線包方式下載到本機,透過微信客戶端載入和啟動,開發規範簡潔,技術封裝徹底,自成開發體系,有 Native 和 H5 的影子,但又絕不雷同。

小程式本身定位為一個簡單的邏輯視圖層框架,官方並不建議用來開發複雜應用,但業務需求卻很難做到精簡。複雜的應用對開發方式有較高的要求,如組件和模組化、自動建置和整合、程式碼重複使用和開發效率等,但小程式開發規範較大的限制了這部分能力。為了解決上述問題,提供更好的開發體驗,我們創造了mpvue,透過使用 Vue.js 來開發微信小程式。

mpvue是什麼

mpvue 是一套定位於開發小程式的前端開發框架,其核心目標是提高開發效率,並增強開發體驗。使用該框架,開發者只需初步了解小程式開發規範、熟悉 Vue.js 基本語法即可上手。框架提供了完整的 Vue.js 開發體驗,開發者編寫 Vue.js 程式碼,mpvue 將其解析轉換為小程式並確保其正確運作。此外,框架還透過 vue-cli 工具向開發者提供 quick start 範例程式碼,開發者只需執行一條簡單指令,即可獲得可執行的專案。

為什麼做mpvue

在小程式內測之初,我們計畫快速迭代出一款對標H5 的產品實現,核心訴求是:快速實現、程式碼復用、低成本和高效率… 隨後經歷了多個小程式建設,結合業務場景、技術選型和小程式開發方式,我們整理匯總出了開發階段面臨的主要問題:

  • #元件化機制不夠完善

  • 程式碼多端重複使用能力欠缺

  • 小程式框架和團隊技術堆疊無法有機結合

  • 小程式學習成本不夠低

#元件機制:小程式邏輯和視圖層程式碼彼此分離,公用元件擷取後無法聚合為單一檔案入口,元件需分別在視圖層和邏輯層引入,維護性差;元件無命名空間機制,事件回呼必須設定為全域函數,元件設計有命名衝突的風險,資料封裝不強。開發者需要友善的程式碼組織方式,透過

ES 模組一次導入;元件資料有良好的封裝。成熟的組件機制,對工程化開發至關重要。

多端復用:常見的業務場景有兩類,透過已有 H5

產品改造為小程式應用或反之。從效率角度出發,開發者希望透過複用程式碼完成開發,但小程式開發框架卻無法做到。我們嘗試透過靜態程式碼分析將 H5

程式碼轉換為小程序,但只做了視圖層轉換,無法帶來更多效益。多端程式碼複用需要更成熟的解決方案。

引入 Vue.js:小程式開發方式與 H5 近似,因此我們考慮和 H5 做程式碼重複使用。沿襲團隊技術堆疊選型,我們將 Vue.js 確定為小程式開發規格。使用Vue.js 開發小程序,將直接帶來如下開發效率提升:

  • H5 程式碼可以透過最小修改復用到小程式

  • 使用Vue.js 元件機制開發小程序,可實現小程序和H5 元件復用

  • 技術堆疊統一後小程序學習成本降低,開發者從H5 轉換到小程式不需要更多學習

  • Vue.js 程式碼可以讓所有前端直接參與開發維護

  • ##為什麼是Vue.js?這取決於團隊技術棧選型,引進新的選型與統一技術堆疊和提高開發效率相悖,有違開發工具服務業務的初衷。

mpvue 的演進

mpvue的形成,來自於業務場景和需求,最終方案的確定,經歷了三個階段。

第一階段:我們實作了一個視圖層程式碼轉換工具,旨在提高程式碼首次開發效率。透過將H5視圖層程式碼轉換為小程式程式碼,包括 HTML 標籤映射、Vue.js 模板和樣式轉換,在此目標程式碼上進行二次開發。我們做到了有限的程式碼重複使用,但組件化開發和小程式學習成本並未有效改善。

第二階段:我們著重於完善程式碼元件化機制。參考 Vue.js

元件規格設計了程式碼組織形式,透過程式碼轉換工具將程式碼解析為小程式。轉換工具主要解決組件間資料同步、生命週期關聯和命名空間問題。最後我們實作了一個

Vue.js 語法子集,但想要實現更多特性或跟隨 Vue.js 版本迭代,工作量變得難以估計,有永無止境之感。

第三階段:我們的目標是實現對 Vue.js 語法全集的支持,達到使用 Vue.js

開發小程式的目的。並透過引入 Vue.js runtime 實現了對 Vue.js 語法的支持,從而避免了人肉語法適配。至此,我們完成了使用

Vue.js 開發小程式的目的。較好地實現了技術棧統一、組件化開發、多端程式碼復用、降低學習成本和提高開發效率的目標。

相關免費學習推薦:javascript(影片),微信小程式開發教學

以上是微信小程式能不能用vue.js的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn