【问题标题】:Clear Auxiliary Route before navigating to another route. @angular-4.0.2在导航到另一条路线之前清除辅助路线。 @angular-4.0.2
【发布时间】:2017-04-29 06:41:40
【问题描述】:

我正在使用辅助路由弹出,toast 通知,在成功导航几秒钟后自动清除。在那段时间router.url 等于/home(aux:toast),如果在那个时候导航到另一条路线,url 变成/detail(aux:toast),但我想要的是在导航到另一个组件之前清除辅助路线。

一种解决方案是在导航到我遵循的辅助路线时。

this.router.navigate([{outlets: {aux: 'toast'}}], {skipLocationChange: true})

这并没有改变地址栏的url,但router.url仍然是/home(aux:toast)

当导航发生同样的事情时,地址栏 url 更改为 /detail(aux:toast)

【问题讨论】:

    标签: angular angular2-routing


    【解决方案1】:

    会有用吗?

     router.navigate([{outlets: {aux: null])
    

    【讨论】:

    • 这行得通,我知道,但我希望这发生在任何路线更改之前
    • hmm,尝试添加 canDeactivate 保护并检查 outlets 是否不为空,并在那里重定向到 outlets null 的路由
    猜你喜欢
    • 2019-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    • 2018-08-04
    • 2016-02-07
    • 1970-01-01
    相关资源
    最近更新 更多