角度重定向到http调用后的路由

时间:2018-09-11 06:24:13

标签: angular

home.component.html

<meta name="viewport" content="width=device-width" initial scale ="1.0" user 
scalable="no">

 <body>

 <div class="container">
 <div class="row">
 <div class="form_bg">
 <form>
   <h2 class="text-center">Login Page</h2>
  <br/>
  Enter Username : <input type="text" class="form-control" 
  [(ngModel)]="username" name="username">

  <a [routerLink]="['/profile']" class="btn btn-primary" 
  (click)="findProfile()">Submit</a>

  </form>
  </div>
  </div>
  </div>
  </body>


this.profileService.getProfileRepos().subscribe(repos => {
    console.log(repos);
    this.repos = repos;
  })    
 }

ngOnInit() {
}


 }

当我输入用户名并单击Submit时,它会将我重定向到另一个页面。但该页面上没有显示任何内容。

2 个答案:

答案 0 :(得分:1)

尽管我强烈反对您的网站询问其他网站的登录详细信息,但这是您做错的事情

 <a [routerLink]="['/profile']" class="btn btn-primary" onclick="findProfile()">Submit</a>

应该是

 <a class="btn btn-primary" (click)="findProfile()">Submit</a>

onclick不能用于绑定到component.ts上的函数,必须使用(click)。此外,点击后,您可以使用/profile

重定向到[routerLink]

findProfile函数中,解析后,您应该导航至配置文件。

此外,考虑使用flatmap中的combineLatestfindProfile等RxJs运算符,因为函数中有多个预订,并且不清楚何时应该进行重定向。

答案 1 :(得分:0)

@rjv同意您的想法。

请尝试删除profile.html的所有内容,仅打印<h1>hello</h1> 检查它是否可以正常工作,是否满足您的条件。

请在profile.component.ts的ngOnInit()方法内调用方法,因为一旦获得该配置文件,就会生成html。