首页 > 解决方案 > 当 skiplocationchange 为真时返回 Angular 6

问题描述

Angular 6 中的路由

当我路由到特定位置时,我会使用

route.navigate(['/home'], { skipLocationChange: true });

但是当返回到以前的路线时,下面的代码没有帮助,有没有其他方法或者应该删除“{ skipLocationChange: true }”

import {Component} from '@angular/core';
import {Location} from '@angular/common';

@Component({
  // component's declarations here
})
class SomeComponent {

  constructor(private _location: Location) 
  {}

  backClicked() {
    this._location.back();
  }
}

标签: javascripthtmlangularroutingangular6

解决方案


使用skipLocationChange

导航而不会将新状态推入历史。

这就是为什么 usinglocation.back()不起作用的原因,因为它只是将浏览器移回历史记录中的先前状态。即使浏览器中的 url 被修改,当前状态也没有改变。

skipLocationChange如果您希望将页面的下一个状态添加到浏览器的历史记录中,则不应使用。


推荐阅读