微信小程序 - 基本概念

app.js

是程序的初始化脚本,可以在这个文件中监听小程序的生命周期,申请全局变量和调用api等。

在这个脚本中使用App()来注册一个小程序,且不能注册多个。

App({
    onLaunch: function(){},//监听初始化
    onShow: function(){},//监听显示(进入前台)
    onHide: function(){},//监听隐藏(进入后台:按Home键离开微信)
    onError: function(msg){},//监听错误
    //如下为自定义的全局方法和变量
    globalFun: function(){},
    globalData: 'I am global data'
})

app.json

是对小程序的全局配置。主要分为五个部分:

(1)pages:页面组

(2)window:框架样式(状态栏、导航条、标题、窗口背景色)

(3)tabBar:底部菜单

(4)networkTimeout:网络超时设置

(5)debug:开启debug模式

而page.json针对页面单独设置,层叠掉app.json的全局设置。

app.wxss

是整个小程序的公共样式表,类似网站开发中的common.css

pages

默认第一条为首页。一个文件夹中中会有四个不同的类型的文件组成,js是脚本,json是配置文件,wxss是样式表文件,wxml是页面结构文件,其中json和wxss文件为非必须(默认为继承app的json和wxss).

扫描二维码关注公众号,回复: 2954683 查看本文章

在每个页面的js文件中可以使用Page()注册一个页面。

Page({
    data: {text: "This is page data."},//页面数据,用来维护视图,json格式 
    onLoad: function(options){},//监听加载
    onReady: function(){},//监听初次渲染完成
    onShow: function(){},//监听显示
    onHide: function(){},//监听隐藏
    onUnload: function(){},//监听卸载
    onPullDownRefresh: function(){},//监听下拉
    onReachBottom: function(){}//监听下拉触底
    onSharedAppMessage: function(){},//监听右上角分享
    //如下为自定义的事件处理函数(视图中绑定)
    viewTap: function(){//setData设置data值,同时将更新视图
        this.setData({text: 'Set som data for updating view.'})
    }
})

在每个页面中的wxml文件中,对页面js中data进行数据绑定,以及自定义事件绑定。

<!--{{}}绑定data中的指定数据并渲染到视图-->
<view class="title">{{text}}</view>

<!--wx:for获取数组数据进行循环渲染,item为数组的每项-->
<view wx:for="{{array}}"> {{item}} </view>

<!--wx:if条件渲染-->
<view wx:if="{{view == 'WEBVIEW'}}"> WEBVIEW </view>
<view wx:elif="{{view == 'APP'}}"> APP </view>
<view wx:else="{{view == 'MINA'}}"> MINA </view>

<!--模板-->
<template name="staffName">
  <view>FirstName: {{firstName}}, LastName: {{lastName}}</view>
</template>
<template is="staffName" data="{{...template.staffA}}"></template>
<template is="staffName" data="{{...template.staffB}}"></template>

<!--bindtap指定tap事件处理函数为ViewTap-->
<view bindtap="ViewTap"> 点我点我 </view>

小程序的启动

微信客户端在打开小程序之前,会把整个小程序的代码包下载到本地。

紧接着通过app.json的pages字段就可以知道你当前小程序的所有路径。

{
  "pages":[
    "pages/index/index",
    "pages/logs/logs"
  ]
}

而写在pages字段的第一个页面就是这个小程序的首页(打开小程序看到的第一个页面)。

于是微信客户端就把首页的代码装载进来,通过小程序底层的一些机制,就可以渲染这个首页。

小程序启动之后,在app.js定义 的App实例的onLauch回调会被执行:

App({
  onLaunch: function () {
    // 小程序启动之后 触发
  }
})

猜你喜欢

转载自blog.csdn.net/CHS007chs/article/details/81661598