所属分类:php教程
一、将公共方法绑定到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构造函数以及生命周期函数的内容解析(附代码)的详细内容,更多请关注zzsucai.com其它相关文章!