【问题标题】:Custom Modal Dialog Box in Browser back in Angular 4+Angular 4+ 中浏览器中的自定义模式对话框
【发布时间】:2018-02-15 11:57:01
【问题描述】:
假设我当前的路线是 /transact/orders 并且在订单摘要视图中,我想要做的是打开一个自定义对话框,其中提供了添加到购物车的选项 strong> 或 cancel 按钮,当他/她按下浏览器的浏览器后退按钮时。如果用户按下 添加到购物车 按钮,它将进入购物车,否则浏览器后退按钮功能会发生。目前,我正在使用 Angular 5.2。我想知道 LocationStrategy 是否可行。我进行了搜索,但找不到合适的示例。有人可以用合适的示例解释吗?
【问题讨论】:
标签:
javascript
angular
routes
location
angular5
【解决方案1】:
您可以在任何想要在按下后退按钮时执行操作的位置订阅位置事件:
import { Subscription } from 'rxjs/Subscription';
ngOnInit() {
this.subscription = <Subscription> this.location.subscribe( () => {
// your code here
} );
}
ngOnDestroy() {
this.subscription.unsubscribe();
}
不要忘记在 OnDestroy 中取消订阅。
编辑:位置应该是位置类型,而不是 LocationStrategy