1-6 微信小程序逻辑层js文件

   微信小程序这个前端系统分为逻辑层和视图层,逻辑层实现数据的加工和处理,与html类似,微信小程序的逻辑层由javascript编写

   逻辑层将数据进行处理后发送视图层,同时接受视图层的时间反馈,为了方便微信小程序的开发,官方在javascript的基础上进行了一些封装和修改,主要有:

        1、提供app和page方法,用来进行程序和页面的注册

             关于app小程序注册文档查看:https://developers.weixin.qq.com/miniprogram/dev/reference/api/App.html 

              page页面注册文档查看:https://developers.weixin.qq.com/miniprogram/dev/reference/api/Page.html

        2、提供丰富的api,如扫一扫,支付等

        3、每个页面有独特的作用域,并提供模块化功能

        4、由于框架并不是在浏览器中运行,所以Javascript在web中的一些能力无法使用,如不能访问document和window等javascript对象

        5、开发者写的所有代码最终将被打包成一份JavaScript并在小程序启动的时候运行,直到小程序销毁

 

 

App(Object object)

注册小程序。接受一个 Object 参数,其指定小程序的生命周期回调等。

App() 必须在 app.js 中调用,必须调用且只能调用一次。不然会出现无法预期的后果。

参数

Object object

属性类型默认值必填说明
onLaunchfunction 生命周期回调——监听小程序初始化。
onShowfunction 生命周期回调——监听小程序启动或切前台。
onHidefunction 生命周期回调——监听小程序切后台。
onErrorfunction 错误监听函数。
onPageNotFoundfunction 页面不存在监听函数。
其他any 开发者可以添加任意的函数或数据变量到 Object 参数中,用 this 可以访问

关于小程序前后台的定义和小程序的运行机制,请参考运行机制章节。

示例代码 

App({
  onLaunch(options) {
    // Do something initial when launch.
  },
  onShow(options) {
    // Do something when show.
  },
  onHide() {
    // Do something when hide.
  },
  onError(msg) {
    console.log(msg)
  },
  globalData: 'I am global data'
})

 

Page(Object object)

注册小程序中的一个页面。接受一个 Object 类型参数,其指定页面的初始数据、生命周期回调、事件处理函数等。

参数

Object object

属性类型默认值必填说明
dataObject  页面的初始数据
onLoadfunction  生命周期回调—监听页面加载
onShowfunction  生命周期回调—监听页面显示
onReadyfunction  生命周期回调—监听页面初次渲染完成
onHidefunction  生命周期回调—监听页面隐藏
onUnloadfunction  生命周期回调—监听页面卸载
onPullDownRefreshfunction  监听用户下拉动作
onReachBottomfunction  页面上拉触底事件的处理函数
onShareAppMessagefunction  用户点击右上角转发
onPageScrollfunction  页面滚动触发事件的处理函数
onResizefunction  页面尺寸改变时触发,详见 响应显示区域变化
onTabItemTapfunction  当前是 tab 页时,点击 tab 时触发
其他any  开发者可以添加任意的函数或数据到 Object 参数中,在页面的函数中用 this 可以访问

示例代码

// index.js
Page({
  data: {
    text: 'This is page data.'
  },
  onLoad(options) {
    // Do some initialize when page load.
  },
  onReady() {
    // Do something when page ready.
  },
  onShow() {
    // Do something when page show.
  },
  onHide() {
    // Do something when page hide.
  },
  onUnload() {
    // Do something when page close.
  },
  onPullDownRefresh() {
    // Do something when pull down.
  },
  onReachBottom() {
    // Do something when page reach bottom.
  },
  onShareAppMessage() {
    // return custom share data when user share.
  },
  onPageScroll() {
    // Do something when page scroll
  },
  onResize() {
    // Do something when page resize
  },
  onTabItemTap(item) {
    console.log(item.index)
    console.log(item.pagePath)
    console.log(item.text)
  },
  // Event handler.
  viewTap() {
    this.setData({
      text: 'Set some data for updating view.'
    }, function () {
      // this is setData callback
    })
  },
  customData: {
    hi: 'MINA'
  }
})

data

data 是页面第一次渲染使用的初始数据

页面加载时,data 将会以JSON字符串的形式由逻辑层传至渲染层,因此data中的数据必须是可以转成JSON的类型:字符串,数字,布尔值,对象,数组

渲染层可以通过 WXML 对数据进行绑定。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值