vtils
Version:
一个面向业务的 JavaScript/TypeScript 实用程序库。
38 lines (35 loc) • 1.47 kB
JavaScript
;
exports.__esModule = true;
exports.pageListeners = exports.pageListenerToCurrentPageListener = exports.miniProgramBus = exports.currentPageListeners = void 0;
var _utils = require("../utils");
var _patchMiniProgram = require("./patchMiniProgram");
/** @private */
var pageListenerToCurrentPageListener = exports.pageListenerToCurrentPageListener = {
pageShow: 'currentPageShow',
pageHide: 'currentPageHide',
pageReady: 'currentPageReady',
pageUnload: 'currentPageUnload',
pagePullDownRefresh: 'currentPagePullDownRefresh',
pageReachBottom: 'currentPageReachBottom',
pageShareAppMessage: 'currentPageShareAppMessage',
pageShareTimeline: 'currentPageShareTimeline',
pageAddToFavorites: 'currentPageAddToFavorites',
pageResize: 'currentPageResize',
pageTabItemTap: 'currentPageTabItemTap'
};
/** @private */
var pageListeners = exports.pageListeners = Object.keys(pageListenerToCurrentPageListener);
/** @private */
var currentPageListeners = exports.currentPageListeners = pageListeners.map(function (pageListener) {
return pageListenerToCurrentPageListener[pageListener];
});
// @ts-ignore
var miniProgramBus = exports.miniProgramBus = new _utils.EventBus({
beforeOn: currentPageListeners.reduce(function (res, currentPageListenerName) {
res[currentPageListenerName] = function (cb) {
cb.__EVENT_BUS_TAG__ = _patchMiniProgram.patchMiniProgram.__CURRENT_PAGE_ID__;
return cb;
};
return res;
}, {})
});