小程序入门之旅

继前期比对了微信衍生的三款产品,对于程序猿的我,肯定是对小程序最感兴趣的,最近也玩起了小程序。如果大家也对它感兴趣,就一起开启小程序的入门之旅吧。

01

工具篇

       首先,在本篇就忽略该操作可以参考微信公众号简易教程,https://mp.weixin.qq.com/debug/wxadoc/dev/,描述了申请小程序的过程。

        期次,可以把自己写好的demo用微信开发工具打开,小程序对于会前端开发的同事,工具使用起来会有一种似曾相识的感觉(是不是简化版的SublimeText和谷歌浏览器的结合体?小程序入门之旅)。

       该工具还提供了上传(上传到腾讯云服务器),测试(生成性能测试报告)    等功能。

小程序入门之旅

02


架构篇

      微信小程序,架构很简单,如下图看到(图中1,2,3,4,5分别对应下面的五点讲解)。

1.app.js 主要是全局公共的js方法声明及调用所在的文件

2.app.json 是小程序整个的配置文件,所以有的页面都在要此注册,不然不允许访问

3.app.wxss 是小程序全局的css文件,公共css写在此最好不过的了

4.pages下是对应着所有页面,每个页面,可以添加四种类型的文件,.json,.wxss,.wxml,.js

5.utils 是我们公共的js存放的地方,因为微信小程序要求,每个js文件里的方法不可以直接引用或调用,必须要用 module.exports方法导出,这样pages 下的.js文件才可以调用到我们在此写的js方法。

小程序入门之旅

03

组件篇

       前端界面的渲染,应用的是ES6的思想,通过组件化的方式渲染出来的。界面层.wxml,不关注数据如何来的,只是做一个架构。实际逻辑及数据填充,通过.js来做数据处理。

      另外.json,对应页面的配置文件。.wxss及对应css样式处理文件。

      举个栗子,如下图所示,动态实现图片切换,首先在.wxml中,搭建swiper组件框架。具体数据如何填充,该页面不管:

<swiper indicator-dots="{{indicatorDots}}"

autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}">

<block wx:for="{{background}}" wx:key="*this">

<swiper-item>

<view class="swiper-item {{item}}"></view>

<view wx:if="{{item=='demo-text-1'}}">

<image class="animation-element-wrapper-image" src="resources/pic/swiper.png"/>

</view>

<view wx:elif="{{item=='demo-text-2'}}">

<image class="animation-element-wrapper-image" src="resources/pic/5.png"/>

</view>

</swiper-item>

</block>

</swiper>

      其次,在.js对类似{{autoplay}}的数据进行组装处理:

Page({

data: {

...

background: ['demo-text-1', 'demo-text-2'],

indicatorDots: true,//是否显示小圆点。

vertical: false,

autoplay: true,//是否自动播放。

interval: 500,//每张图片间隔时间

duration: 100//每张图片停留时间。

},

小程序入门之旅

小程序入门之旅小程序入门之旅结束小程序入门之旅小程序入门之旅