Routing Aurelia导航事件似乎触发得太早 我想要达到的目标

Routing Aurelia导航事件似乎触发得太早 我想要达到的目标,routing,aurelia,Routing,Aurelia,我有一个项目列表,显示在网格中。当您单击其中一个项目时,它将导航到该项目的详细信息。在该页面上,我想检索一些关于dom的信息,以便基于dom执行一些操作 问题 如果我订阅事件(使用事件聚合器)router:navigation:complete of Aurelia并在此处执行console.log,那么它将显示列表的DOM信息,而不是详细信息页面的DOM信息 我订阅了错误的活动吗 将一个变量声明为currentActivePage:string;和app.js中的导航成功事件,以及您需要的任

我有一个项目列表,显示在网格中。当您单击其中一个项目时,它将导航到该项目的详细信息。在该页面上,我想检索一些关于dom的信息,以便基于dom执行一些操作

问题 如果我订阅事件(使用事件聚合器)router:navigation:complete of Aurelia并在此处执行console.log,那么它将显示列表的DOM信息,而不是详细信息页面的DOM信息


我订阅了错误的活动吗

将一个变量声明为currentActivePage:string;和app.js中的导航成功事件,以及您需要的任何位置

currentActivePage: string;
self.eventAggregator.subscribe('router:navigation:success', obj => {
            if (obj !== undefined) {
                self.currentActivePage = obj.instruction.config.name;
            }
            //self.prepareTabs(obj.instruction.config);
        });
同样的,你可以在任何需要的地方使用。在HTML中,您可以根据如下条件显示或隐藏dom

<div class="${currentActivePage == 'PageName' ? 'DisplayNone':'DisplayBlock'}">
content will go here
</div>

内容将放在这里