目前小程序开发比较多人使用的两个框架是一个 mpvue ,另一个是 wepy.
我 pick mpvue, 下面说一下我的考虑。
-
Star 数量 两个项目的 Star 数量其实挺接近的。 再考虑到
wepy2016 年就发布了,而mpvue是今年才刚发布的。从这方面看我倾向于认为大部分开发者更青睐mpvue。 -
mpvue是直接基于 Vue 2.4.1 修改而来。而wepy是朝着类Vue开发体验上来的。但是实际开发体验差距很大。 举个例子。 比如你写了一个TodoItem组件。在Vue中你显然可以这样用:
<todo-item/>
<todo-item/>
但是在 wepy 中这是不行的。 wepy 需要怎么做呢? 参考 :
<counter1 :num="myNum"></counter1>
<counter2 :num.sync="syncNum"></counter2>
//声明页面中将要使用到的组件
components = {
panel: Panel,
counter1: Counter,
counter2: Counter,
list: List
};
注意看 counter1 和 counter2 这种写法。 因为不能同名。
再比如 wepy 对于通过类创建的实例是没有响应式支持的。 这方面的例子还有很多。有兴趣可以翻翻 GitHub 的 issues.
在这方面 mpvue 的优势就出来了。mpvue不是表面上看起来像 vue, mpvue就是基于vue 改造出来的。
不过这里也要说明的是小程序是没有 DOM 的,也就是 mpvue 也是最终要编译成 WXML 所以,并不是所有的 vue 中的功能特性都支持。