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

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

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

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

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

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

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

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

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

5.编译方式改变,WePY  从基于文件编译调整为基于入口编译,因此对于图片等静态资源需要指定 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的砖还是比较方便的

WePY的脱胎换骨的更多相关文章

  1. ORM查询语言(OQL)简介--高级篇:脱胎换骨

    相关文章内容索引: ORM查询语言(OQL)简介--概念篇 ORM查询语言(OQL)简介--实例篇 ORM查询语言(OQL)简介--高级篇:脱胎换骨 ORM查询语言(OQL)简介--高级篇(续):庐山 ...

  2. 淘宝技术发展(Java时代:脱胎换骨)

    我的师父黄裳@岳旭强曾经说过,“好的架构图充满美感”,一个架构好不好,从审美的角度就能看得出来.后来我看了很多系统的架构,发现这个言论基本成立.那么反观淘宝前面的两个版本的架构,你看哪个比较美? 显然 ...

  3. 像VUE一样写微信小程序-深入研究wepy框架

    像VUE一样写微信小程序-深入研究wepy框架 微信小程序自发布到如今已经有半年多的时间了,凭借微信平台的强大影响力,越来越多企业加入小程序开发. 小程序于M页比相比,有以下优势: 1.小程序拥有更多 ...

  4. wepy 初探

    此篇文章仅仅是对自身项目的一个总结,并对一些遇到的问题给出解决方法 一,安装 wepy安装 二,使用 wepy的文档已经写的很清晰了,遇到的问题大多在issues和wiki中也能找到,具体就不概述了, ...

  5. 微信小程序开发库grace vs wepy

    grace和wepy都是辅助小程序开发的开源库,本文对两者做个对比. 注:本文是作者本人的一些拙见,纯粹的技术讨论,不想引起技术信仰之争,欢迎积极.正向的讨论及建议. 如果你还不了解Grace, 请参 ...

  6. [AST实战]从零开始写一个wepy转VUE的工具

    为什么需要 wepy 转 VUE "转转二手"是我司用 wepy 开发的功能与 APP 相似度非常高的小程序,实现了大量的功能性页面,而新业务 H5 项目在开发过程中有时也经常需要 ...

  7. 小程序 wepy框架 + iview-weapp的用法

    最近在弄wepy的时候在想有没有什么ui比较合适一点的wepy的,也是在网上看了好久发现iview还不错.引用简单,上手超快,组件绚丽!当然,这里还介绍下微信官方建议的框架也是和不错的,有需要的可以看 ...

  8. 使用wepy开发微信小程序01——常用的组件

    1.axio.js 'use strict' import axios from 'axios' import wepyAxiosAdapter from 'wepy-plugin-axios/dis ...

  9. 微信小程序之:wepy(二)

    一大堆实例:人家的博客园 代码规范: 1.尽量使用驼峰命名,避免使用$开头,框架内建属性都已$开头,可以使用this直接调用. 2.入口文件.页面.组件后缀都为.wpy. 3.使用ES6语法开发. 4 ...

随机推荐

  1. SQL Server 将某一列的值拼接成字符串

    名称 海鲜水产 水果蔬菜 海参 肉禽蛋 牛排 腊味 生鲜食品 将以上一列变成: 生鲜食品,海鲜水产,水果蔬菜,海参,牛排,肉禽蛋,腊味 sql for xml path('')

  2. .NET错误提示之:无法更新EntitySet“TableName”因为它有一个DefiningQuery

    使用LINQ 进行提交数据时发生的错误提示 原因:提交的对象表 没有设主键.

  3. Raknet是一个基于UDP网络传输协议的C++网络库(还有一些其它库,比如nanomsg,fastsocket等等)

    Raknet是一个基于UDP网络传输协议的C++网络库,允许程序员在他们自己的程序中实现高效的网络传输服务.通常情况下用于游戏,但也可以用于其它项目. Raknet有以下好处: 高性能 在同一台计算机 ...

  4. 21 步助你成为成功的 Web 开发者(激情不是被动的:它是一种对行动起来的追求)

    随着 Web 开发产业的爆发式发展,许多人会问这样的问题:我如何才能成为一名 Web 开发者?我认为这是一个错误的提问.问题应该是:我如何才能成为一名成功的 Web 开发者? 能提出这样的问题很重要, ...

  5. Wiki上的C++哲学

    Philosophy[edit] Throughout C++'s life, its development and evolution has been informally governed b ...

  6. better later than never

    工作一年半,写程序也有几年了,终于开了个博客,记录一下遇到的问题和解决方法,和其他需要记录的东西.希望自己不会懒……已经开通两周了才开始写,唉……

  7. Google C++测试框架系列高级篇:第一章 更多关于断言的知识

    原始链接:More Assertions 词汇表 现在你应该已经读完了入门篇并且会使用GTest来写测试.是时候来学一些新把戏了.这篇文档将教会你更多知识:用断言构造复杂的失败信息,传递致命失败,重用 ...

  8. Mybatis_three

    延迟加载 实现多对一的延迟加载(association) 例如下面的:有很多个账户信息(招商\工商\农商)是属于一个用户人的 [需求] 查询账户(Account)信息并且关联查询用户(User)信息. ...

  9. Scala 学习之路(四)—— 数组Array

    一.定长数组 在Scala中,如果你需要一个长度不变的数组,可以使用Array.但需要注意以下两点: 在Scala中使用(index)而不是[index]来访问数组中的元素,因为访问元素,对于Scal ...

  10. 【对象属性复制】BeanUtils.copyProperties(obj1, obj2);

    实现对象的属性值复制,只会复制命名相同的文件. import org.springframework.beans.BeanUtils; BeanUtils.copyProperties(obj1, o ...