用户单击电子邮件中的帐户激活时如何重定向到角度6页面

时间:2018-09-26 07:56:04

标签: angular angular5 jwt angular6

当用户单击电子邮件中的帐户激活时,如何重定向到角度6页面。

我的流程:
1.用户注册帐户。
2.用户从电子邮件中获取激活帐户链接。链接示例:http://localhost/editProfile/ {userId} / token / {token}。这应该是我的API,可以从后端获取JWT令牌。
3.用户单击链接,将重定向到编辑个人资料页面。

我的问题是,当用户重定向到编辑配置文件页面时,当用户单击URL时如何从URL获取令牌和ID时,我无法通过使用角度6来理解。

1 个答案:

答案 0 :(得分:0)

您可以通过以下方式实现此目标(这些尚未接受测试,如果我有任何错别字/错误,请告诉我。)。简单的路由参数处理。

在您的路线定义中:

export const routes: Routes = [
  { path: '/editProfile/:userId/token/:token', component: MyComponent }
]

在您的路线组件中:

import { ActivatedRoute } from '@angular/router';
import { Subscription } from 'rxjs';

export class EditProfileComponent implements OnInit, OnDestroy {
  userId: string;
  token: string;

  private subscription: Subscription ;

  constructor(private route: ActivatedRoute) { }

  ngOnInit() {
    this.subscription = this.route.params.subscribe(params => {
      this.userId = params['userId'];
      this.token = params['token'];
    });
  }

  ngOnDestroy() {
    this.subscription.unsubscribe();
  }
}

有关路线参数的更多信息,请参见https://angular-2-training-book.rangle.io/v/v2.3/handout/routing/routeparams.html