首頁 >微信小程式 >小程式開發 >微信小程式Page建構子以及生命週期函數的內容解析(附程式碼)

微信小程式Page建構子以及生命週期函數的內容解析(附程式碼)

不言
不言原創
2018-09-04 10:56:584525瀏覽

這篇文章帶給大家的內容是關於微信小程式Page建構函數以及生命週期函數的內容解析(附程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

一、將公用方法綁定到Page上

#單一綁定

const oldPage = Page
Page = function(app) {
  // 注意公共函数的名字不要重复,否则覆盖
  app.util = function() {}
  
  return oldPage(app)
}

多個綁定,檔案綁定

const util = require('./util.js');  // 需要绑定的函数由util文件exports出来
const oldPage = Page
Page = function(app) {
  let newPage = Object.assign({}, util, app)
  
  return oldPage(newPage)
}

二、擴展,修改生命週期函數

const oldPage = Page
Page = function(app) {
  app.onLoad = function(options) { // 这里必须使用function, 不可以使用箭头函数, 否则this指向错误
      console.log("扩展onLoad");
  
      // onLoad函数在是当前page实例上下文中执行,所以当前的this为当前page实例
      // 如果不使用call来硬绑定,而是直接app.onLoad(),那么onLoad里的this将为app这个对象
      // 即我们正常在page.js里Page(app) 括号里面我们自己写的page对象
      if(typeof app.onLoad === 'function') {
          app.onLoad.call(this, options); 
      }
  }
  
  return oldPage(app)
}

ps.想更有系統的了解js關於this的知識可以戳這裡

三、使用

我自己寫的時候,將自訂的內容單獨封裝到一個js檔案中,然後在app.js引用這個檔案即可

require('./init.js'); //引用即可
App({
  onLaunch: function (options) {
  }

})

相關推薦:

微信小程式的生命週期與參數傳遞

#微信小程式 Page()函數詳解

############################################################################################### #########微信小程式開發系列(四)頁面的生命週期的詳解############

以上是微信小程式Page建構子以及生命週期函數的內容解析(附程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn