refactoring of component event system + little docs

This commit is contained in:
zadam
2020-02-29 19:43:19 +01:00
parent 95d1952896
commit 49398f5374
4 changed files with 47 additions and 41 deletions

View File

@@ -65,22 +65,24 @@ class AppContext extends Component {
this.triggerEvent('initialRenderComplete');
}
async triggerEvent(name, data) {
await this.handleEvent(name, data);
/** @return {Promise} */
triggerEvent(name, data) {
return this.handleEvent(name, data);
}
async triggerCommand(name, data = {}) {
/** @return {Promise} */
triggerCommand(name, data = {}) {
for (const executor of this.executors) {
const called = await executor.handleCommand(name, data);
const fun = executor[name + "Command"];
if (called) {
return;
if (fun) {
return executor.callMethod(fun, data);
}
}
console.debug(`Unhandled command ${name}, converting to event.`);
await this.triggerEvent(name, data);
return this.triggerEvent(name, data);
}
getComponentByEl(el) {