diff --git a/src/pages/index.js b/src/pages/index.js index be473b97c..e051213e4 100644 --- a/src/pages/index.js +++ b/src/pages/index.js @@ -114,11 +114,12 @@ export default () => { * @returns {this} */ select(pg, opts = {}) { - const { em, selected } = this; + const { em } = this; const page = isString(pg) ? this.get(pg) : pg; - // this.selected = page; + const mainComp = page.getMainComponent(); this.model.set('selected', page, opts); - // !opts.silent && em.trigger(evPageSelect, page, selected); + const lm = em.get('LayerManager'); + lm && mainComp && lm.setRoot(mainComp); return this; }, diff --git a/src/pages/model/Page.js b/src/pages/model/Page.js index c5336d06c..ae9a51fa0 100644 --- a/src/pages/model/Page.js +++ b/src/pages/model/Page.js @@ -16,5 +16,10 @@ export default Model.extend({ getMainFrame() { return this.getFrames().at(0); + }, + + getMainComponent() { + const frame = this.getMainFrame(); + return frame && frame.getComponent(); } });