微信小程序的onLaunch()方法和onShow()方法


在app.js里面你會發現一個onLaunch()方法,這個方法是當小程序加載完畢后就執行的方法,此外,還有一個onShow()方法,先看下面的代碼

app.js

復制代碼
//app.js
App({
  onLaunch: function (options) {
    console.log(options);
    console.log("你好");
  },

  onShow: function (options) {
    console.log("This is the on show function");
    console.log("onShow");
    console.log(options);
  },

  globalData: {
    userInfo: null
  }
})
復制代碼

發現在控制台中,onLaunch和onShow方法都執行了,且二者的console.log(options)打印的是同樣的東西,為啥要這樣子呢?

首先onLaunch方法是在小程序加載時執行的,而onShow方法是在每次從小程序的前后台切換時都執行的,比如比點開發者工具上面的“切前台”,再點"切后台”,此時會發現控制台輸出的是onShow方法里面內容,而onLaunch不再執行。

好像,手機里當你點小程序右上角的關閉按鈕時,在5分鍾之內再次進入該小程序的話,默認執行onShow方法,不執行onLaunch方法,好像是5分鍾之內算是切換后台而已?(不是很確定)

 

 

onShow(options)
1.調用時機:小程序啟動,或從后台進入前台顯示時觸發。如果想要在小程序每次進入到前台時都執行一些事情,那么可以將代碼放在這個里面。
比如一些實時動態更新的數據,用戶每次進來都要從服務器更新,那么我們就可以在這個里面做。

 

 


onHide()
調用時機:小程序被切換到后台(包括微信自身被切換到后台或者小程序暫時被切換到后台)。可以在這個方法中共做一些數據的保存。
小程序從前台進入后台時觸發。

 

 

 

onError(String error)
小程序發生腳本錯誤或 API 調用報錯時觸發

 

onError:function(msg){
console.log(msg);
},

 

小程序出錯的話,會在編輯器中自動打印出錯誤信息,該錯誤信息也可以通過onError(String error)的error參數接收並打印出來或者另作他用

 

來源:知了黃勇


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM