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