导航并返回给定路线时,请保留最新的查询参数

时间:2019-02-24 14:47:45

标签: dart angular-dart angular-dart-routing

我正在使用angular dart Router软件包,并在用户单击特定菜单项时使用以下代码将查询参数附加到路由(称为此路由a):

    Future<NavigationResult> onSelect(int newId) => _router.navigate(
        RoutePaths.path.toUrl(), 
        newId == null ? null : NavigationParams(queryParameters: {idParam: '$newId'})
    );

如果我随后在页面上单击新路线,然后返回路线a,我希望该路线继续具有我附加到其上的查询参数。

我可能会采用错误的方法,但是我建议的解决方案是将查询参数存储在localStorage中,然后在用户从页面导航到页面时尝试将其附加到RouteLink。因此,在我的导航模板中,我将得到以下内容:

<li class="nav-item">
    <a class="nav-link" [routerLink]="RoutePaths.alerts.toUrl()" [queryParams]="path-id" [routerLinkActive]="'active'">Alerts</a>
</li>

从本地存储中填充路径ID的地方。

此问题是queryParams选项似乎不起作用?如果确实存在以这种方式添加查询参数的选项,我不确定应该用什么替换它。我仔细阅读了文档,可以找到路由器的有效属性绑定列表。如果您能指出我的观点,那将会有所帮助。

有人可以告诉我:1)我会以错误的方式处理吗?有没有更简单的方法来维护queryParameters? 2)如何在模板中动态设置queryParameters?

0 个答案:

没有答案