如何解决如何重定向到Angular 8中的上一页
我有一个组件,用户可以从各个页面访问该组件。当用户单击确定时 按钮,他应该被重定向到上一页,即。他所在的页面 来到这个组件。
我遇到了 window.history.back(); 和 this.router.navigate('../')。
此外,window.history.back();和之间有什么区别?和this.router.navigate('../')
我还想了解
var fh = new AWS.Firehose({region: 'us-west-2'});
和this.location.back()
之间的区别。
解决方法
要获取上一次成功的导航并导航至该导航,可以使用:
const lastNav = router.getLastSuccessfulNavigation();
const previousRoute = lastNav.previousNavigation;
router.navigateByUrl(previousRoute);
注意:由于previousRoute
的类型为UrlTree
,因此您可以直接使用它使用navigateByUrl
方法进行导航。
关于history.back(来自文档):
history.back()方法使浏览器在会话历史记录中后退一页。它与调用history.go(-1)具有相同的效果。如果没有上一页,则此方法调用不执行任何操作
使用this.router.navigate( '../' )
<a [routerLink]="['../','foo','bar']">Go Up</a>
将带您进入更高级别的导航
所以区别是window.history.back();
会引导您,this.router.navigate( '../' )
会引导您。.
关于您的最后一个问题:
window
对象引用当前帧,该对象具有 history 对象属性,该属性返回窗口的历史记录对象->更多信息:https://www.w3schools.com/jsref/obj_history.asp
location
应该从@angular/common
导入并在类似以下的构造函数中使用:
import {Location} from '@angular/common';
@Component({
// component's declarations here
})
class SomeComponent {
constructor(private location: Location)
{}
goBack() {
this.location.back();
}
}
例如,goBack()
可以由onClick
在 Go Back 按钮上调用。.
有关更多详细信息,请查看https://angular.io/guide/architecture-components。
,尝试使用位置对象
import {Location} from '@angular/common';
constructor(private location: Location){}
并在需要时使用它
this.location.back();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。