最近開發了兩個小程序的小項目,很恰巧的是分別用到的wepy和mpvue。 對于小程序開發者來說,wepy(騰訊)和mpvue(美團點評)應該基本上屬于如雷貫耳。先來看看他們各自的數據。 從數據上看,wepy要優于mpvue一些,但是需要看到,mpvue發布后僅僅一年時間,已經隱隱有趕超wepy的趨勢了。 我個人是從以下幾個方面來對看這兩個框架的:
個人認為mpvue的思路更先進。對vue框架的轉換思路很棒,可以多端通用(如果有需要),而且一般的開發者只要了解vue和小程序,上手迅速,接入平滑。另外,后續如果代碼需要支持小程序或者vue的新特性,只要在mpvue-loader上進行改造即可,從擴展上來說,即兼容vue的mixin和vuex等全家桶,也可以通過webpack-loader 來增強能力。 wepy雖然也是類vue的框架,但是會發現很多vue的語法在里面還運用不了,標簽上也不能使用原生html標簽。開發者既要了解vue,小程序,wepy的語法,如果你使用wepy提供的數據流管理,那你少說還得了解redux。這么多需要學習的東西,對于新接入的開發者來說,門檻有些高。
這一點和設計思路來說息息相關,整體來說我更喜歡mpvue,畢竟是vue家族的體驗。各種需要的組件都可以搬過來。wepy要把vue組件搬過來就麻煩了。 而在數據流這方面,wepy的注解型connect寫法雖然比較簡潔,但是感覺類vue框架和redux集成總有點違和感,而且寫起來不夠方便,相反mpvue的vuex用起來就順眼多了。
這一點上可以說各有千秋,畢竟集成了優化過的request方式,mpvue需要自己選用ajax組件。而mpvue則在px轉rpx等方面有原生的支持,wepy提到的各種優化細節其實都是vue框架本身具備的一些能力,所以mpvue原生就支持了。
這點上,wepy來說應該有一點優勢,畢竟騰訊自家的產品,微信有什么風吹草動,很容易先知先覺。不過現在來看,基于小程序原生的組件還是比較多,而且轉成wepy的.wpy文件還是有一些成本。同樣,對于mpvue,并沒有特別優秀的UI庫,將現有的一些類庫強轉成小程序版本的也蠻痛苦。所以在小程序開發腳手架的生態建設上,兩者應該都還有蠻長的路要走。 總之,wepy和mpvue都是非常優秀的框架,只是,基于以上的一些理由,我還是更喜歡mpvue,它讓我可以在小程序開發的生態里面用我擅長和熟悉的vue技術棧愉快的玩耍,就這一點來說,我舉手投mpvue一票。 |