对于前端来说,尤其是开发小程序的前端来说,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. Docker Explanation and Apache Image

    https://blog.sajjan.com.np/2017/02/05/docker-getting-started-containers-ubuntu/ https://blog.sajjan. ...

  2. 实现Qt日志功能并输出到文件(使用qInstallMsgHandler安装customMessageHandler)good

    原文 http://www.cppblog.com/lauer3912/archive/2011/04/10/143870.html 一.基本分类:qDebug : 调试信息提示qWarning: 一 ...

  3. 基于mipsel编译Qt4.6.2版本(有具体参数和编译时遇到的问题)

    1.使用的configure配置为:./configure -embedded mips -little-endian -xplatform qws/linux-mips-g++ -prefix /o ...

  4. WCF研究-中篇

    中篇 5.托管于宿主 6.消息模式 7.WCF行为-实例管理和并发控制 8.安全 5.托管于宿主 托管 宿主Host Ø承载WCF Service运行的环境 自承载方式 系统服务方式 IIS方式 WA ...

  5. 高并发 Nginx+Lua OpenResty系列(6)——Lua开发库Mysql

    Mysql客户端 lua-resty-mysql是为基于cosocket API的ngx_lua提供的Lua Mysql客户端,通过它可以完成Mysql的操作.默认安装OpenResty时已经自带了该 ...

  6. select下拉箭头样式重置

    select{ appearance:none; -moz-appearance:none; -webkit-appearance:none; background: url("../ima ...

  7. 28个Java开发常用规范技巧总结

    1.类的命名使用驼峰式命名的规范. 例如:UserService,但是以下情景例外:DO / BO / PO / DTO / VO. 例如说:UserPO,StudentPO(PO,VO,DTO,等这 ...

  8. IM推送保障及网络优化详解(二):如何做长连接加推送组合方案

    对于移动APP来说,IM功能正变得越来越重要,它能够创建起人与人之间的连接.社交类产品中,用户与用户之间的沟通可以产生出更好的用户粘性. 在复杂的 Android 生态环境下,多种因素都会造成消息推送 ...

  9. yii后台模板标签

    yii模板中的label标签 <?php echo $form->labelEx($model,'name'); ?> 编译后: <label for="Projec ...

  10. idea提交代码到自己git账号的master branch

    1.注册GitHub账号 2.创建本地密钥与远程仓库连接(使用idea的话,这第二步可能不是必须的,但是密钥我之前配置过.所以写下来) ①安装git 客户端sudo apt-get install g ...