如何在 Angular 2 中导航到不同的 URL?我知道我们可以使用 JavaScript 的
window.location.href = '...';
但这似乎是错误的,会导致页面刷新。我很确定 Angular 2 中应该有允许您在不刷新页面的情况下在 URL 之间移动的功能。我似乎无法在文档中找到它。
提前致谢!
如何在 Angular 2 中导航到不同的 URL?我知道我们可以使用 JavaScript 的
window.location.href = '...';
但这似乎是错误的,会导致页面刷新。我很确定 Angular 2 中应该有允许您在不刷新页面的情况下在 URL 之间移动的功能。我似乎无法在文档中找到它。
提前致谢!
根据文档,您可以使用路由器及其导航功能来更改当前状态,并在必要时传递参数:
import {Component, ...} from 'angular2/angular2';
import {Router, ...} from 'angular2/router';
import {HomeCmp} from '../home/home';
@Component({
selector: 'app',
// params of your component here
})
@RouteConfig([
{ path: '/', component: HomeCmp, as: 'MyHome' },
// your other states here
])
export class AppCmp {
router: Router;
constructor(router: Router) {
this.router = router;
}
navigateToHome() {
// for example, that's how we can navigate to our home route
this.router.navigate(['./MyHome', {param: 3}]);
}
}
这是官方文档的链接。
这是种子项目的链接,其中包含使用路由器的一个很好的示例。