# App(Object object)
注冊(cè)小程序。接受一個(gè) Object 參數(shù),其指定小程序的生命周期回調(diào)等。
App() 必須在 app.js 中調(diào)用,必須調(diào)用且只能調(diào)用一次。不然會(huì)出現(xiàn)無(wú)法預(yù)期的后果。
# 參數(shù)
# Object object
| 屬性 | 類(lèi)型 | 默認(rèn)值 | 必填 | 說(shuō)明 | 最低版本 |
|---|---|---|---|---|---|
| onLaunch | function | 否 | 生命周期回調(diào)——監(jiān)聽(tīng)小程序初始化。 | ||
| onShow | function | 否 | 生命周期回調(diào)——監(jiān)聽(tīng)小程序啟動(dòng)或切前臺(tái)。 | ||
| onHide | function | 否 | 生命周期回調(diào)——監(jiān)聽(tīng)小程序切后臺(tái)。 | ||
| onError | function | 否 | 錯(cuò)誤監(jiān)聽(tīng)函數(shù)。 | ||
| onPageNotFound | function | 否 | 頁(yè)面不存在監(jiān)聽(tīng)函數(shù)。 | 1.9.90 | |
| onUnhandledRejection | function | 否 | 未處理的 Promise 拒絕事件監(jiān)聽(tīng)函數(shù)。 | 2.10.0 | |
| onThemeChange | function | 否 | 監(jiān)聽(tīng)系統(tǒng)主題變化 | 2.11.0 | |
| 其他 | any | 否 | 開(kāi)發(fā)者可以添加任意的函數(shù)或數(shù)據(jù)變量到 Object 參數(shù)中,用 this 可以訪問(wèn) |
關(guān)于小程序前后臺(tái)的定義和小程序的運(yùn)行機(jī)制,請(qǐng)參考運(yùn)行機(jī)制章節(jié)。
# onLaunch(Object object)
小程序初始化完成時(shí)觸發(fā),全局只觸發(fā)一次。參數(shù)也可以使用 wx.getLaunchOptionsSync 獲取。
參數(shù):與 wx.getLaunchOptionsSync 一致
# onShow(Object object)
小程序啟動(dòng),或從后臺(tái)進(jìn)入前臺(tái)顯示時(shí)觸發(fā)。也可以使用 wx.onAppShow 綁定監(jiān)聽(tīng)。
參數(shù):與 wx.onAppShow 一致
# onHide()
小程序從前臺(tái)進(jìn)入后臺(tái)時(shí)觸發(fā)。也可以使用 wx.onAppHide 綁定監(jiān)聽(tīng)。
參數(shù):與 wx.onAppHide 一致
# onError(String error)
小程序發(fā)生腳本錯(cuò)誤或 API 調(diào)用報(bào)錯(cuò)時(shí)觸發(fā)。也可以使用 wx.onError 綁定監(jiān)聽(tīng)。
參數(shù):與 wx.onError 一致
# onPageNotFound(Object object)
基礎(chǔ)庫(kù) 1.9.90 開(kāi)始支持,低版本需做兼容處理。
小程序要打開(kāi)的頁(yè)面不存在時(shí)觸發(fā)。也可以使用 wx.onPageNotFound 綁定監(jiān)聽(tīng)。注意事項(xiàng)請(qǐng)參考 wx.onPageNotFound。
參數(shù):與 wx.onPageNotFound 一致
示例代碼:
App({
onPageNotFound(res) {
wx.redirectTo({
url: 'pages/...'
}) // 如果是 tabbar 頁(yè)面,請(qǐng)使用 wx.switchTab
}
})
# onUnhandledRejection(Object object)
基礎(chǔ)庫(kù) 2.10.0 開(kāi)始支持,低版本需做兼容處理。
小程序有未處理的 Promise 拒絕時(shí)觸發(fā)。也可以使用 wx.onUnhandledRejection 綁定監(jiān)聽(tīng)。注意事項(xiàng)請(qǐng)參考 wx.onUnhandledRejection。
參數(shù):與 wx.onUnhandledRejection 一致
# onThemeChange(Object object)
基礎(chǔ)庫(kù) 2.11.0 開(kāi)始支持,低版本需做兼容處理。
系統(tǒng)切換主題時(shí)觸發(fā)。也可以使用 wx.onThemeChange 綁定監(jiān)聽(tīng)。
參數(shù):與 wx.onThemeChange 一致
# 示例代碼
App({
onLaunch (options) {
// Do something initial when launch.
},
onShow (options) {
// Do something when show.
},
onHide (options) {
// Do something when hide.
},
onError (msg) {
console.log(msg)
},
globalData: 'I am global data'
})