小程序 开发第三方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); };

 

posted @ 2019-10-11 14:29  黑夜的白羊丿  阅读(323)  评论(0编辑  收藏  举报