微信小程序框架解析Softeem·杨标一、小程序介绍和演示微信小程序是国内腾讯公司推出的一款类APP应用平台,用户和开发者可以在依据腾讯发布的API文档与微信Web开发者工具进行开发,其程序主要有以下几个特点:1、类Web的应用程序,但不是HTML52、即用即走,随手可得3、拥有离线能力4、基于微信跨平台5、媲美原生操作体验如图所示:左图是一个微信小程序的界面
微信小程序采用Native预告加载一个WebView
当打开指定页面时,无需加载额外资源直接渲染,这种操作方式极大的改善了用户的操作体验,达到了原生APP的操作效果
二、小程序框架上边两个图片可以说明微信小程序的框架结构,微信小程序里面View视图层与AppServer逻辑层分开的,与现在主流的前后端分离开发大同小异,数据通信采用微信API进行异步请求视图层的界面布局采用wxml,视图层的样式控制采用wxss进行,在这里要说明一下,微信小程序里面的wxml与前端里面的HTML似,都是用标签进行布局
而wxss与前端里面的CSS一样,支持CSS3,动画,变幻等新特性,而界面的逻辑控制就是JS(微信后期出了一个wxs,是一个类JS的语言,语法与JS差不多)三、小程序视图层刚刚在上个章节提到了微信小程序的框架结构,在这个章节,我们主要来看一下视图层的相关介绍
在视图层中,微信的WXML作为标签的布局,它支持数据绑定,输运运算,同时还支持模板引用(template),这些与HTML里面的差不多,唯一有一点区别的就是在事件绑定这一块
在微信的视图层事件绑定时面,微信不事件采用的是bind的策略,与HTML里面的on是不一样的,但同时也支持事件冒泡
微信自己封装了一系列的视图层事件,如bindtap点击,bindlongtap长按,这些事件针对移动端做了进一步的优化,例其能够符合移动端APP的操作习惯而作为界面样式控制的WXSS