一、onLaunch介紹
onLaunch是小程序生命周期中最先觸發(fā)的函數(shù),也是小程序開發(fā)中最常用的一個(gè)函數(shù),它在小程序打開時(shí)觸發(fā),一般用于完成一些初始準(zhǔn)備工作:
App({
onLaunch: function () {
// 生命周期回調(diào)——監(jiān)聽小程序初始化。當(dāng)小程序初始化完成時(shí),會(huì)觸發(fā) onLaunch(全局只觸發(fā)一次)
console.log('App Launch')
}
})
當(dāng)小程序被打開時(shí),onLaunch函數(shù)會(huì)被調(diào)用,我們可以在這里對小程序進(jìn)行一些初始化工作,比如獲取用戶信息,獲取小程序更新狀態(tài)等操作。
二、onLaunch中的參數(shù)
onLaunch函數(shù)有一個(gè)參數(shù)options,是啟動(dòng)參數(shù)。調(diào)用時(shí),會(huì)將啟動(dòng)參數(shù)(options)傳遞到對應(yīng)的生命周期回調(diào)函數(shù)中,我們可以通過options獲取小程序啟動(dòng)時(shí)的參數(shù),例如:
App({
onLaunch: function (options) {
console.log(options.query)
//輸出:{id: 1, name: "example"}
}
})
通過參數(shù)options,我們可以獲取小程序啟動(dòng)時(shí)場景值、來源信息等特殊參數(shù),以便根據(jù)該參數(shù)進(jìn)行不同的業(yè)務(wù)處理。
三、onLaunch中的全局變量
onLaunch函數(shù)中的函數(shù)參數(shù)可通過this獲取App()實(shí)例,我們可以在onLaunch中添加一些全局變量或方法,此時(shí),在小程序的所有頁面(包括子頁面)中都可以訪問到這些全局變量或方法。
App({
onLaunch: function () {
this.globalData = {
userInfo: null
}
}
})
此時(shí),在小程序的其他頁面中可以這樣調(diào)用全局變量userInfo:
const app = getApp()
Page({
onLoad: function () {
console.log(app.globalData.userInfo)
}
})
這些全局變量可以用于保存全局?jǐn)?shù)據(jù),例如保存用戶信息,app實(shí)例中需要保存的任何數(shù)據(jù)等。
四、小結(jié)
onLaunch是小程序生命周期中最先被調(diào)用的一個(gè)函數(shù),它在小程序第一次啟動(dòng)時(shí)觸發(fā)。通過onLaunch,我們可以進(jìn)行小程序的一些初始化操作,例如獲取用戶信息、獲取小程序更新狀態(tài)等。onLaunch函數(shù)接收一個(gè)參數(shù)options,用于獲取小程序啟動(dòng)時(shí)的參數(shù),以便進(jìn)行不同的業(yè)務(wù)處理。此外,我們還可以在onLaunch中添加一些全局變量或者方法,以便在小程序的各個(gè)頁面中使用。