Aurelia-用户注销后更新菜单栏

Aurelia-用户注销后更新菜单栏,aurelia,Aurelia,我有一个导航菜单,需要在用户注销后重新加载 我有一个logout.ts,它基本上清除了JWT和loggedIn值 import { autoinject } from "aurelia-framework"; import { TokenService } from "../../auth/tokenService"; z import { Router } from 'aurelia-router'; @autoinject export class

我有一个导航菜单,需要在用户注销后重新加载

我有一个logout.ts,它基本上清除了JWT和loggedIn值

    import { autoinject } from "aurelia-framework";
    import { TokenService } from "../../auth/tokenService"; z
    import { Router } from 'aurelia-router';

    @autoinject
    export class Logout {

        constructor(private tokenService: TokenService, public router: Router) {
            tokenService.clearJWT();

            this.router.refreshNavigation()
        }
    }
这一切都很好,但我想重定向到主页,但同时更新菜单,这一次重新检查loggedIn状态

我试过重定向,我试过:

   this.router.navigateToRoute('home')
还有上面的那个。在所有情况下,导航菜单都不会更新。通过更新navmenu,它将检查localstorage中的loggedin值,并更改菜单的结构


我还想让它在删除这些项目后进入主页,但更重要的是,我如何让它刷新导航菜单?

听起来,您需要确保您的
主页
路线已刷新,即使它已经是当前路线。如果是,请在
配置路由器
方法中添加
激活策略。替换

import {activationStrategy} from 'aurelia-router';

export class MyClass {
    configureRouter(config) {
        config.map([{
            route: 'home',
            name: 'home',
            activationStrategy: activationStrategy.replace,
            title: 'My Title',
            moduleId: 'myModule',
        }]);
    }
}