还可以使用mitt.js通过消息订阅的方式来实现。
在util新建文件mitt.js
function mitt(all) {
all = all || Object.create(null);
return {
on(type, handler) {
(all[type] || (all[type] = [])).push(handler);
},
off(type, handler) {
if (all[type]) {
all[type].splice(all[type].indexOf(handler) >>> 0, 1);
}
},
emit(type, evt) {
(all[type] || []).slice().map((handler) => {
handler(evt);
});
(all['*'] || []).slice().map((handler) => {
handler(type, evt);
});
}
};
}
module.exports = {
mitt: mitt
}
app.js的代码增加:
const mitt = require('./utils/mitt').mittpage里的代码增加
App({
onLaunch: function () {
let that = this
that.globalData.bus = mitt()
//调用page里的_custommethod
that.globalData.bus.emit('_custommethod', data)
}
})
const app = getApp()
Page({
custommethod: function(data){
},
onShow: function () {
let that = this
app.globalData.bus.on('_custommethod', that.custommethod)
},
onHide: function () {
let that = this
app.globalData.bus.off('_custommethod', that.custommethod)
},
})
网友回复
DLNA与UPnP的区别和不同?
苏超自建抢票app,通过先预约再抽签化解高并发抢票?
python如何让给电脑在局域网中伪装成电视接收手机的投屏图片视频播放?
如何结合python+js如何自己的视频编码与加密播放直播?
python如何在电脑上通过局域网将本地视频或m3u8视频投屏电视播放?
腾讯视频爱奇艺优酷vip电影电视剧视频如何通过python绕过vip收费直接观看?
有没有可免费观看全球电视台直播m3u8地址url的合集?
有没有实现观影自由的免vip影视苹果 CMS V10 API的可用url?
python如何实时检测电脑usb插入检测报警?
如何判断真人操作的鼠标移动直线轨迹与机器操作的轨迹?