首页 >微信小程序 >小程序开发 >微信小程序Page构造函数以及生命周期函数的内容解析(附代码)

微信小程序Page构造函数以及生命周期函数的内容解析(附代码)

不言
不言原创
2018-09-04 10:56:584529浏览

本篇文章给大家带来的内容是关于微信小程序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