# App


# App(Object object)

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

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

# 参数

# Object object

属性 类型 必填 说明
onLaunch function 生命周期回调——监听小程序初始化。
onShow function 生命周期回调——监听小程序启动或切前台。
onHide function 生命周期回调——监听小程序切后台。
其他 any 开发者可以添加任意的函数或数据变量到 Object 参数中,用 this 可以访问

# onLaunch(Object object)

小程序初始化完成时触发,全局只触发一次。(安卓通过小程序跳转方式打开时,每次都会触发。)

# 参数
名称 类型 说明
path string 首次打开的页面路径
query Object 打开当前页面路径中的参数
scene number 启动小程序的场景值
referrerInfo Object 来源信息。从另一个小程序进入小程序时返回。否则返回 {}

referrerInfo 的结构

属性 类型 说明
appId string 来源小程序的appId
extraData Object 来源小程序传过来的数据,scene=1037或1038时支持

返回有效 referrerInfo 的场景

场景值 场景 appId含义
1037 小程序打开小程序 来源小程序
1038 从另一个小程序返回 来源小程序

# onShow(Object object)

小程序启动或切前台时触发。

参数:

名称 类型 说明
path Object 打开当前页面的路径
query Object 打开当前页面路径中的参数
scene number 启动小程序的场景值
referrerInfo Object 来源信息。从另一个小程序进入小程序时返回。否则返回 {}

referrerInfo 的结构

属性 类型 说明
appId string 来源小程序的appId
extraData Object 来源小程序传过来的数据,scene=1037或1038时支持

返回有效 referrerInfo 的场景

场景值 场景 appId含义
1037 小程序打开小程序 来源小程序
1038 从另一个小程序返回 来源小程序

# onHide()

小程序从前台进入后台时触发。

# 示例代码

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

# AppObject getApp(Object object)

获取到小程序全局唯一的 App 实例。

# 示例代码

// other.js
var appInstance = getApp()
console.log(appInstance.globalData) // I am global data

# 注意

  • 不要在定义于 App() 内的函数中、或调用 App 前调用 getApp() ,使用 this 就可以拿到 app 实例。
  • 通过 getApp() 获取实例之后,不要私自调用生命周期函数。