摘要:不直接正题一将公共方法绑定到上单个绑定注意公共函数的名字不要重复,否则覆盖多个绑定,文件绑定需要绑定的函数由文件出来二扩展,修改生命周期函数这里必须使用不可以使用箭头函数,否则指向错误扩展函数在是当前实例上下文中执行,所以当前的为当前实例如
不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/97328.html
摘要:不直接正题一将公共方法绑定到上单个绑定注意公共函数的名字不要重复,否则覆盖多个绑定,文件绑定需要绑定的函数由文件出来二扩展,修改生命周期函数这里必须使用不可以使用箭头函数,否则指向错误扩展函数在是当前实例上下文中执行,所以当前的为当前实例如 不BB,直接正题 一. 将公共方法绑定到Page上 单个绑定 const oldPage = Page Page = function(app...
摘要:今天,为了让大家的项目优雅升级,快速接入,给你带来一份丰盛的迁移指南目录结构和微信小程序一样,包含一个描述整体程序的和多个描述各自页面的。 cml 作为真正让一套代码运行多端的框架,提供标准的MVVM模式,统一开发各类终端。 同时,拥有各端独立的 运行时框架(runtime)、数据管理(store)、组件库(ui)、接口(api)。 此外,cml在跨端能力加强、能力统一、表现一致等方面...
摘要:自定义组件触发的时候。使用外部样式表在最上方引入文件,微信小程序的路径一个大坑,接着在引入即可。 好吧,突然发现学不完了,一下子,那就分开吧,由于时间太久,直接重新大致复习了一下 微信小程序自定义组件微信小程序支持自定义组件下方的目录showImg(https://melovemingming-1253878077.cos.ap-chengdu.myqcloud.com/blog-im...
阅读 930·2019-08-30 15:55
阅读 503·2019-08-26 13:56
阅读 2037·2019-08-26 12:23
阅读 3276·2019-08-26 10:29
阅读 580·2019-08-26 10:17
阅读 2814·2019-08-23 16:53
阅读 651·2019-08-23 15:55
阅读 2726·2019-08-23 14:25