14

如何在 Angular 2 中导航到不同的 URL?我知道我们可以使用 JavaScript 的

window.location.href = '...';

但这似乎是错误的,会导致页面刷新。我很确定 Angular 2 中应该有允许您在不刷新页面的情况下在 URL 之间移动的功能。我似乎无法在文档中找到它。

提前致谢!

4

1 回答 1

13

根据文档,您可以使用路由器及其导航功能来更改当前状态,并在必要时传递参数:

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}]);
  }
}

这是官方文档的链接。

这是种子项目的链接,其中包含使用路由器的一个很好的示例。

于 2015-10-24T20:46:18.277 回答