繁体   English   中英

angular2:在可观察到的成功之后通过代码进行路由

[英]angular2: routing by code after Observable success

我知道使用routerLink指令可以路由到目的地:

<a [routerLink]=" ['/app'] ">LogOut</a>

这是在您的网站上创建链接的静态方法。

但是,有时必须根据是否正确处理了http请求来完成路由:

public createAccount():void {
    this.clearAlerts();
    this.commty.create(this.form.value.mail, this.form.value.passwd)
    .subscribe(
        (result: any) => {       // <-- handler for result
            >>>>>>>>>> go to '/app' route   <<<<<<<<<<<<<<<
        },
        (error: any) => {        // <-- handler for error
            this.addAlert(error.message);
        }
    );
}

我想一定有一种使用打字稿代码来做到这一点的方法...您能给我一个例子还是任何文档?

router.navigate(['/app'])

但为此,您需要在组件中导入和注入Router

import {Router}     from '@angular/router';
import { Component } from '@angular/core';

@Component({
  selector: 'my-app',
  template: '<h1>Hello</h1>',
})
export class AppComponent  {
    constructor(private router: Router){
    router.navigate(['/app'])

    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM