Aurelia中的动态路由-更改标题

Aurelia中的动态路由-更改标题,aurelia,Aurelia,我正试图改变标题,因为它目前说的“添加”新的和更新的内容。我也尝试过routeConfig(它抛出了一个错误:未处理的承诺拒绝类型错误:无法读取未定义的属性“navModel”),只是想知道我是否接近找到正确的代码?我需要按一下这个路由器吗 我相信我可能需要对UpdateTile做一些事情: { route: 'content/:id', name: 'Details', title: 'Details', viewPo

我正试图改变标题,因为它目前说的“添加”新的和更新的内容。我也尝试过routeConfig(它抛出了一个错误:未处理的承诺拒绝类型错误:无法读取未定义的属性“navModel”),只是想知道我是否接近找到正确的代码?我需要按一下这个路由器吗

我相信我可能需要对UpdateTile做一些事情:

    { 
        route: 'content/:id',
        name: 'Details', 
        title: 'Details',
        viewPorts: { main: { moduleId: './admin/content/details' }, aside: { moduleId: './admin/content/aside' } }, 
        settings: { menu:menuSection.content, access: { controller: 'content', action: 'get' } }
    },
    { 
        route: 'content/:id',
        name: 'Add', 
        viewPorts: { main: { moduleId: './admin/content/details' }, aside: { moduleId: './admin/content/aside' } }, 
        settings: { menu:menuSection.content, access: { controller: 'content', action: 'get' } }
        title: 'Add',
        href: 'content/0',
        nav: true
    }   


    import {Router} from 'aurelia-router'; 

    activate(){
        if (this.id === 0) {
            this.router.title = "Add";
        } else {
            this.router.title = "Edit";
        }
    }

如果要从激活功能更改标题,请尝试

class UpdateTitle {
    run(routingContext, next, routeConfig) {
        var instr = routingContext.nextInstructions.find(i => i.params.id !== undefined && i.params.id !== 0 && i.params.id !== '');
        if(instr !== undefined) {
            Unsure what to do here?//routeConfig.navModel.title("TEST");
            debugger;
        }

        return next();
    }
}

我尝试了此未处理的承诺拒绝类型错误:无法读取未定义的属性“navModel”:-(当我在aurelia导航示例应用程序上试用时效果很好…你能在那里试用一下,然后看看为什么你的应用程序不同吗?我不是要用:UpdateTitle做些什么吗?请参见question@ClareBarrington米哈伊尔的解决方案应该可以。你能解释一下我为什么没有为你工作吗?我收到了一个错误:未处理的承诺拒绝类型错误:Canno无法读取未定义的属性“navModel”
activate(params, routeConfig) {
    routeConfig.navModel.title = 'Edit';
}