Angular 5 - 我应该使用哪个向后导航 - href 或 location.back()?
Angular 5 - Which should I use to navigate backward - href or location.back()?
我有一个应用程序可以导航到无法前进的页面。想想在电视指南中单击一个节目以打开包含该节目详细信息的页面,显然你会想要返回到电视指南。
对于返回电视指南的按钮,我有一个 <a>
标签。
哪个是最可取的用例:
- 使用
href="/guide"
或
- 在函数调用
location.back()
的地方使用 (click)=goBack()
您应该使用 Angular 的内置位置服务作为。
import {Component} from '@angular/core';
import {Location} from '@angular/common';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.scss']
})
class AppComponent {
constructor(private location: Location) {
}
back() {
this.location.back();
}
}
如果您想在 Angular 应用程序中导航,您不想使用经典 href
链接,因为它们设计用于服务器呈现的应用程序,而不是客户端使用 History Javascript API.
的应用
更喜欢使用 Angular 中的 RouterLink。
在 RouterLink
和 location.back()
之间选择是你的,这取决于你是想控制你想重定向到的页面,还是只想要与浏览器的后退按钮相同的行为.
我有一个应用程序可以导航到无法前进的页面。想想在电视指南中单击一个节目以打开包含该节目详细信息的页面,显然你会想要返回到电视指南。
对于返回电视指南的按钮,我有一个 <a>
标签。
哪个是最可取的用例:
- 使用
href="/guide"
或
- 在函数调用
location.back()
的地方使用(click)=goBack()
您应该使用 Angular 的内置位置服务作为。
import {Component} from '@angular/core';
import {Location} from '@angular/common';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.scss']
})
class AppComponent {
constructor(private location: Location) {
}
back() {
this.location.back();
}
}
如果您想在 Angular 应用程序中导航,您不想使用经典 href
链接,因为它们设计用于服务器呈现的应用程序,而不是客户端使用 History Javascript API.
更喜欢使用 Angular 中的 RouterLink。
在 RouterLink
和 location.back()
之间选择是你的,这取决于你是想控制你想重定向到的页面,还是只想要与浏览器的后退按钮相同的行为.