註冊程序


App()


App()函數用來註冊一個小程式。接受一個object參數,其指定小程式的生命週期函數等。

object參數說明:

QQ截图20170208095544.png

# 前台、後台定義: 當用戶點擊左上角關閉,或按了設備Home鍵離開微信,小程式並沒有正在的銷毀,而是進入了後台;當再次啟動微信或再次打開小程序,又會從後台進入前台。

只有當小程式進入後台一定時間,或是系統資源佔用過高,才會被真正的銷毀。

範例程式碼:

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

App.prototype.getCurrentPage()


##getCurrentPage()函數使用者取得目前頁面的實例。

getApp()


我們提供了全域的

getApp()函數,可以取得到小程式實例。

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

注意:

App()必須在app.js中註冊,且不能註冊多個。

不要在定義於

App()內的函數中呼叫getApp(),使用this就可以拿到app實例。

不要在onLaunch的時候呼叫

getCurrentPage(),此時page還沒產生。

透過getApp取得實例之後,不要私自呼叫生命週期函數。