一、写一个函数分发,对事件进行一层包裹,判断符合要求才执行判断,不同判断要求的可以加一个标识或者函数
class Controller { constructor(handlers, page) { this.handlers = handlers; this.proxyHandlers = {}; this.page = page; } proxy() { Object.entries(this.handlers).forEach(([key, handler]) => { this.proxyHandlers[key] = this.before(handler); this.page[key] = this.proxyHandlers[key]; }); } judge() {} before(handler) { return (...args) => { if (!this.judge()) { handler.apply(this.page, ...args); } }; } }
学费了么?学费了必须做个题:web前端模拟笔试练习题(微信小程序)