小程序 开发第三方js文件中使用生命周期函数或小程序内置函数
使用场景:单独引入(非微信Page.js)的js文件往往需要配合小程序生命周期使用,我们需要将第三方js文件中的钩子函数和微信Page.js的钩子函数合并到一起
Page页面
var Page = require('../../utils/plugin.js').test; //此处为我们将要开发的第三方js Page({ data: { }, onLoad: function (options) { }, onShow: function () { }, })
第三方JS
exports.zyad = function (arg) {
//handleOnLoad,handleOnShow都是page.js的钩子函数
function handleOnLoad() { }; function handleOnShow() { };
//通过call来“合并”钩子函数 function merge(page, name, fn) { var method = page[name]; page[name] = function (arg) { if (method) { method.call(this, arg); } fn.call(this, arg); }; }; merge(arg, "onLoad", handleOnLoad); merge(arg, "onShow", handleOnShow); };