Heading for the future

WePY的脱胎换骨

对于前端来说,尤其是开发小程序的前端来说,WePY框架一定不陌生,他是一种小程序开发框架。而且是属于类Vue风格,掌握Vue再来学习WePY学习成本极低。

今天为啥要写这篇文章呢,因为在复习WePY时发现已经有了WePY2了。

犹记得当时开发商城时每次异步更新数据都得$apply,$apply,现在终于不用了。

WePY2比起WePY1简直是脱胎换骨的变化,当然类Vue风格是没有变的,但是内部改了很多的东西,而且官方也说明了,WePY2并不是WePY1的升级版本,而是完全重新开发的全新版本!

让我们来看看脱胎换骨之后有哪些不同之处

1.入口申请调整,WePY 1 使用类的继承方式 export default class MyPage extends wepy.page {} 在 WePY 2 中调整为 wepy.page({})。将实例化的过程放在生命周期事件中。

2.数据绑定机制调整,WePY 1 使用脏检查进行数据绑定,却让开发者不知道使用时候去调用 $apply() 方法。在 WePY 2 中使用了 Vue Observer 实现数据绑定,告别$apply()。

3.基于原生组件,WePY 1 是通过文件编译创建的静态组件在动态循环遍历时会出现一些问题,WePY 2 直接基于的小程序原生的组件去实现,避免了这一类问题。

4.Vue 模板语法,WePY 2 中推荐使用 html 代替 wxml 来写 template,支持除 filter 之外的所有 Vue 模板语法。

5.编译方式改变,WePY 2 从基于文件编译调整为基于入口编译,因此对于图片等静态资源需要指定 static 选项 。

上述这些改变让我觉得比较惊喜是支持Vue的模板语法

我们来看看WePY1的模板语法

充斥着大量的View  text,可读性并不是很好

但WePY2就不一样了,WePY推荐使用 html 代替 wxml 来写 template,支持除 filter 之外的所有 Vue 模板语法

我们可以使用div,a标签等等html标签,并且可以使用v-show,v-if等等指令。

当然,由于WePY2是完全重新开发的,这也导致WePY2的向下兼容性并不友好,要把WePY1的项目升级成WePY2会比较困难。

WePY2和Vue有多像呢,我们看看官网就知道了

上面只是其中一部分,感觉编写WePY2的文档是真的省时省力,直接参考Vue官方文档就完事了

 

总的来说WePY2的进步还是很大的,感觉搬WePY2的砖还是比较方便的

 

posted @ 2019-07-22 09:20 一只菜鸟攻城狮啊 阅读(...) 评论(...) 编辑 收藏