我有一个Chrome扩展程序(或浏览器插件),我使用Angular 5进行弹出。在问题出现之前的一些注意事项,我有一个登录屏幕,它重定向主要组件(飞行组件),因此在这种情况下router.navigation
按预期工作。
在扩展程序的导航栏中,我有一个来自后台脚本的消息的监听器,当他更改视图并通知我的扩展时,它会监听用户操作。例如从航班视图更改为酒店视图。
当此操作发生时,我需要将航班组件更改为酒店组件。要做到这一点,我有一个服务,它监听从后台脚本发出的消息,发出各种类型的消息,所以我过滤只获得正确的消息。按照我捕获value.type
。
在我的navbar
我订阅了消息。
this.message
.filter(value => value.hasOwnProperty('type'))
.subscribe((value) => {
this.router.navigate(['/' + value.type]);
});
此时所有发生的都是期待甚至导航被调用,但是当值是酒店或汽车类型时不会改变到酒店组件,在飞行组件中保持“锁定”。
有关申请的更多信息: