首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >角9-路由-堆栈历史记录(清除)

角9-路由-堆栈历史记录(清除)
EN

Stack Overflow用户
提问于 2020-05-23 15:36:06
回答 1查看 2.9K关注 0票数 2

是否可以使用角9路由来管理scenarious,如下所述?

有三页(A、B和C)。用户输入页面A(这是注册页),然后插入注册数据,然后输入第二页(B),其中必须插入确认代码。我希望用户可以从这个页面前进(C页)和清晰的历史记录(页面A和b不能用back函数更容易访问),但是他可以返回页面A,这可能吗?

A -> B -> C当在C,A e B没有更多可用的A -> B -> A当在B时,我可以回到A

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2020-05-25 08:38:55

有多种方法可以做到这一点。其中两项建议如下:

  • 您将使用本机浏览器location.history API手动操作历史记录。
  • 使用包含isRoute数据的rxjs/subject创建服务。在下一页(B之后)实例化它。检查数据并执行路由。

就我个人而言,我更喜欢第二个。为此,请执行以下操作:

1)生成具有首选名称的服务。

2)在服务中,创建一个主题来存储我们的路由(isAllowed)的数据(最初设置为true)。

3)在您的页面中,B作为构造函数中的私有类变量以及路由路由器访问它。

代码语言:javascript
运行
复制
constructor(private service: ServiceName, private router: Router) {}

4)通过订阅isAllowed subject来检查值subject是否为真。如果不是,路由到首选组件。

代码语言:javascript
运行
复制
this.service.isAllowed.subscribe({isAllowed} => {
  isAllowed ? this.router.navigate("component path here") : false
})
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61974484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档