微信小程序跨页面通信解决思路

在小程序环境中是不能偷懒了,需要把之前的代码改写一下。要把 Page 对象也传给调度中心保存起来,作为回调函数调用时的上下文对象。

代码:

//event.jsclassEvent{    style="color: #333333; font-weight: bold;">if (typeof fn != "function") {            console.error('fn must be a function')            return        }                this._stores = this._stores || {}                ;(this._stores[event] = this._stores[event] || []).push({cb: fn, ctx: ctx})    }    emit (event) {        this._stores = this._stores || {}        var store = this._stores[event], args        if (store) {            store = store.slice(0)            args = [].slice.call(arguments, 1)            for (var i = 0, len = store.length; i < len; i++) {                store[i].cb.apply(store[i].ctx, args)            }        }    }    off (event, fn) {        this._stores = this._stores || {}        // all        if (!arguments.length) {            this._stores = {}            return        }        // specific event        var store = this._stores[event]        if (!store) return        // remove all handlers        if (arguments.length === 1) {            delete this._stores[event]            return         }        // remove specific handler        var cb        for (var