2.1.2微信小程序MINA框架的基本结构
MINA提供了自己的视图层描述语言WXML(WeiXinMarkupLanguage)和WXSS(WeiXinStyleSheets),以及基于JavaScript的逻辑层框架,并在视图层与逻辑层间提供了数据传输和事件系统(如图2-2所示)。
WXML:这是MINA框架设计的一套标签语言,结合基础组件、事件系统,可以构建出页面的结构。
WXSS:它是MINA框架设计的一套样式语言,用于描述WXML的组件样式。
WXSS用来决定WXML的组件应该怎么显示。
JavaScript:一种高级编程语言,通过解释执行,是一门动态类型,面向对象的直译语言。现在已经被广泛应用于有关Web应用的开发和为网页添加各种的交互行为和特殊效果。
图2-2MINA的基本组成
MINA的基本核心是一个响应的数据绑定系统。整个系统主要可以分为两块,视图层(View)和逻辑层(AppService)。框架可以让数据与视图非常简单地保持同步。每当数据修改的时候,只需要在逻辑层修改数据,视图层就会做相应的更新。与此同时,MINA框架管理了整个小程序的界面路由,可以做到界面间的无缝切换,并给以界面完整的生命周期。开发者需要做的只是将界面的数据、方法、生命周期函数注册在框架中,其他的一切复杂的操作都交由框架处理。框架还提供了一套基础的组件,这些组件自带微信风格的样式以及特殊的逻辑,开发者可以通过组合基础组件,创建出强大的微信小程序。开发者还可以使用丰富的微信原生API,可以方便的调用微信提供的功能,比如获取用户信息,本地存储,扫描二维码等功能[12]。
2.1.3微信小程序框架的目录结构
一个完整的微信小程序包含一个描述整体程序的app()和多个描述各自页面的page()。一个小程序主体部分app()由三个文件组成,这三个文件必须放在项目的根目录下,如下表:
表2-1微信小程序目录结构
文件 是否必填 作用
app.js 是 小程序逻辑
app.json 是 小程序公共设置
app.wxss 否 小程序公共样式表
其中一个小程序子页面page()由四个文件组成,分别是:
表2-2页面组成目录
文件类型 是否必填 作用
js 是 页面逻辑
wxml 是 页面结构
wxss 否 页面样式表
json 否 页面配置
2.2二维码存储信息技术
二维码技术是指按照特定的排序规则,将二维平面内的一些黑白相间的图形排序来记录数据的信息存储技术[13]。二维码通常呈正方形,在每张二维码的三个角落里,分别印有较小的类似于“回”型的正方形图形。这三个图形是解码软件用来定位二维码的图形。扫描二维码的设备不需要精确地对准二维码,无论以何种角度进行扫描,机器仍然可以正确地获取到存储于二维码中的数据。二维码还有一个最大的优点,它具有容错能力。如果二维码图形出现了一定的破损,仍然可以被机器读取内容,容错量可达二维码面积的7%~30%。同时它还具有条码技术的一些共有的性质:每种码制有其自己特定的字符集;每个字符占有确定的宽度;并且还有一定的校验功能等等。除此之外,二维码还具有信息容量大,编码范围广,译码可靠性高,可引入加密措施,并易于制作,成本低廉等优点。