在 AngularJS 中,我使用 ui-router 在我的应用程序内部进行重定向(更改状态)。
它有 2 种可能的重定向选项
- 在模板中
ui-sref='stateName'
- 在控制器中
$state.go()
我刚开始玩 Angular (4),我找到了如何从模板更改路由的唯一方法,例如:
- 模板
routerLink="routePath"
ui-router 中有什么方法可以从组件更改路由吗?
constructor(private router:Router) {}
changeRoute() {
this.router.navigate(...)
// this.router.navigateByUrl(...)
}
另请参阅https://angular.io/docs/ts/latest/api/router/index/Router-class.html
你可以像这样通过路由器导航
router.navigate([URL])
或者像这样
router.navigateByUrl('whole_string_containing_full_path')
这里的router是在构造函数中创建的一个实例,是先从router中导入的,这两者基本没有区别
第一个接受数组,第二个接受字符串形式的 url。