微信小程序中Page构造函数与生命周期函数的内容剖析及代码示例

why 196 2024-08-02

本篇文章给大家带来的内容是关于微信小程序page构造函数以及生命周期函数的内容解析(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

微信小程序中Page构造函数与生命周期函数的内容剖析及代码示例

一、将公共方法绑定到Page上

单个绑定

1

2

3

4

5

6

7

const oldPage = Page

Page = function(app) {

  // 注意公共函数的名字不要重复,否则覆盖

  app.util = function() {}

   

  return oldPage(app)

}

多个绑定,文件绑定

1

2

3

4

5

6

7

const util = require('./util.js');  // 需要绑定的函数由util文件exports出来

const oldPage = Page

Page = function(app) {

  let newPage = Object.assign({}, util, app)

   

  return oldPage(newPage)

}

二、扩展,修改生命周期函数

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

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中引用这个文件即可

1

2

3

4

5

6

require('./init.js'); //引用即可

App({

  onLaunch: function (options) {

  }

 

})


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微信小程序实例中详情页数据动态实现的方法解析
下一篇:小程序中实现分享功能的方法及代码示例展示
相关文章

 发表评论

暂时没有评论,来抢沙发吧~