【问题标题】:How do I get the Router navigate extra "replaceUrl" to work correctly?如何让路由器导航额外的“replaceUrl”以正常工作?
【发布时间】:2019-05-13 03:58:35
【问题描述】:

我有一个联系人添加表单,可以从我们应用程序的多个屏幕导航到该表单。

提交表单后,我会将用户带到一个屏幕以查看已添加的联系人。

当用户使用后退按钮时,它应该将他们带回到他们原来的屏幕。

这可能是 Android 后退按钮或调用 RouterExtensions 后退功能的按钮。

当从表单导航到视图页面时,我使用了额外的导航 replaceUrl。

我也尝试在导航到表单时使用skipLocationChange extra,但这会产生更多问题。

我创建了一个简单的 Playground 页面流,它创建的问题并不完全相同,但确实引发了一个我不知道该怎么处理的错误:

https://play.nativescript.org/?template=play-ng&id=BfVcGZ&v=2

在我们的应用程序中,通过使用 replaceUrl 额外的,后退按钮确实会将用户带到正确的页面。

但是,他们会在短时间内再次看到表单。这不是理想的用户体验。

在链接的 Playground 中,我确实收到了一个错误:

无法重新附加从不同路由创建的 ActivatedRouteSnapshot。

这似乎告诉我replaceUrl 确实正在从路由表中删除该页面。

但是,该页面尚未销毁,因此该应用正在尝试显示它不应该显示的页面。

【问题讨论】:

    标签: nativescript nativescript-angular


    【解决方案1】:

    Page Router Outlet 尚不支持replaceUrl,有一个open feature request,您可能想注册对该功能的投票并在那里跟进以获取进一步的更新。

    【讨论】:

    • 谢谢。我查看并搜索了那张门票清单,但不知何故错过了它。
    猜你喜欢
    • 2019-12-31
    • 2015-03-23
    • 2023-03-15
    • 2012-06-07
    • 2016-01-02
    • 1970-01-01
    • 2018-04-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多