资讯专栏INFORMATION COLUMN

扩展微信小程序 Page 构造函数,修改生命周期函数

Shonim / 788人阅读

摘要:不直接正题一将公共方法绑定到上单个绑定注意公共函数的名字不要重复,否则覆盖多个绑定,文件绑定需要绑定的函数由文件出来二扩展,修改生命周期函数这里必须使用不可以使用箭头函数,否则指向错误扩展函数在是当前实例上下文中执行,所以当前的为当前实例如

不BB,直接正题

一. 将公共方法绑定到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) {
  }

})

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/52956.html

相关文章

  • 扩展信小程序 Page 构造函数修改生命周期函数

    摘要:不直接正题一将公共方法绑定到上单个绑定注意公共函数的名字不要重复,否则覆盖多个绑定,文件绑定需要绑定的函数由文件出来二扩展,修改生命周期函数这里必须使用不可以使用箭头函数,否则指向错误扩展函数在是当前实例上下文中执行,所以当前的为当前实例如 不BB,直接正题 一. 将公共方法绑定到Page上 单个绑定 const oldPage = Page Page = function(app...

    lucas 评论0 收藏0
  • cml迁移指南(CML Migrate Guide)

    摘要:今天,为了让大家的项目优雅升级,快速接入,给你带来一份丰盛的迁移指南目录结构和微信小程序一样,包含一个描述整体程序的和多个描述各自页面的。 cml 作为真正让一套代码运行多端的框架,提供标准的MVVM模式,统一开发各类终端。 同时,拥有各端独立的 运行时框架(runtime)、数据管理(store)、组件库(ui)、接口(api)。 此外,cml在跨端能力加强、能力统一、表现一致等方面...

    FreeZinG 评论0 收藏0
  • 信小程序自定义组件(一)

    摘要:自定义组件触发的时候。使用外部样式表在最上方引入文件,微信小程序的路径一个大坑,接着在引入即可。 好吧,突然发现学不完了,一下子,那就分开吧,由于时间太久,直接重新大致复习了一下 微信小程序自定义组件微信小程序支持自定义组件下方的目录showImg(https://melovemingming-1253878077.cos.ap-chengdu.myqcloud.com/blog-im...

    Guakin_Huang 评论0 收藏0
  • 【摘要】信小程序

    摘要:月日凌晨,微信公众平台对个服务号发送了微信小程序的测试邀请。同时为了更适合开发微信小程序,我们对进行了扩充以及修改。组件文档微信小程序官方文档传送门 9月22日凌晨,微信公众平台对200个服务号发送了微信小程序的测试邀请。微信方面表示,小程序目前只是测试阶段,未来此类小程序的主体比较广泛,不管是个人、政府、企业、媒体,抑或是其他组织开发者,均可以申请注册和使用小程序,小程序发布后,在业...

    Render 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<