您好,登錄后才能下訂單哦!
這篇文章主要介紹微信小程序可以用vue.js嗎,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
微信小程序能用vue.js,mpvue是一款使用【Vue.js】開發微信小程序的前端框架,使用此框架,開發者將得到完整的【Vue.js】開發體驗,同時為H5和小程序提供了代碼復用的能力。
微信小程序能用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 開發小程序的目的。較好地實現了技術棧統一、組件化開發、多端代碼復用、降低學習成本和提高開發效率的目標。
以上是“微信小程序可以用vue.js嗎”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。