@ray-core/runtime
Version:
Ray 是一个全新的基于 React 的小程序开发框架
24 lines (23 loc) • 626 B
JavaScript
var effector = {
listenerConfigs: [],
};
function dispose(listener) {
effector.listenerConfigs = effector.listenerConfigs.filter(function (config) { return config.listener !== listener; });
}
function connect(listener, once) {
effector.listenerConfigs.push({ listener: listener, once: once });
return function () { return dispose(listener); };
}
function run() {
effector.listenerConfigs.forEach(function (config) {
config.listener();
if (config.once) {
dispose(config.listener);
}
});
}
export default {
connect: connect,
run: run,
dispose: dispose,
};