Angular 从5中的URL获取数据
我在url栏中输入一个链接Angular 从5中的URL获取数据,angular,routing,angular-routing,Angular,Routing,Angular Routing,我在url栏中输入一个链接 http://localhost:4200/reset-password-action/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9/5 我想从url获取eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9和5 我的app routing.module.ts文件中有它 const routes: Routes = [ { path: 'reset-password-action/:token/:user_id',
http://localhost:4200/reset-password-action/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9/5
我想从url获取eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9和5
我的app routing.module.ts文件中有它
const routes: Routes = [
{ path: 'reset-password-action/:token/:user_id', component: NewPasswordComponent }
];
我需要一个简单的语法来获取这些数据。您可以使用ActivatedRoute获得类似这样的查询参数。下面是一个例子:
import {Router, ActivatedRoute, Params} from '@angular/router';
import {OnInit, Component} from '@angular/core';
@Component({...})
export class MyComponent implements OnInit {
queryParamsStatus ='';
constructor(private activatedRoute: ActivatedRoute) {}
ngOnInit() {
// subscribe to router event
this.activatedRoute.params.subscribe((params: Params) => {
this.queryParamsStatus= params['status'];
console.log(queryParamsStatus );
});
let tempRows = this.rows.filter(s => s.staus === this.queryParamsStatus);
}
}
您可以通过简单地将状态替换为token或userId来获取token/userId
希望这能起作用。您需要先导入激活的路由,然后使用此路由
import {Router, ActivatedRoute} from '@angular/router';
class ABC {
id: any;
token: any;
constructor(private activatedRoute: ActivatedRoute) {}
ngOnInit() {
this.activatedRoute.params.subscribe(params => {
if (typeof params['id'] !== 'undefined') {
this.id = params['id'];
} else {
this.id = '';
}
if (typeof params['token'] !== 'undefined') {
this.id = params['token'];
} else {
this.id = '';
}
});
}
}
首先,你想从哪里获得这些数据? 如果您想将它放在同一个组件中,那么我认为它是NewPasswordComponent
import {ActivatedRoute} from '@angular/router';
import {OnInit, Component} from '@angular/core';
@Component({...})
export class NewPasswordComponent implements OnInit {
constructor(private route: ActivatedRoute) {}
ngOnInit() {
console.log(this.route.snapshot.params.token);
console.log(this.route.snapshot.params.user_id);
}
}
或者你也可以得到如下结果:
constructor(private route: ActivatedRoute) {}
ngOnInit() {
this.route.params.subscribe(event => {
this.token = event.token;
this.user_id = event.user_id;
});
}
您想从何处获取此数据?目前,在当前组件NewPasswordComponent中,您是否阅读了文档?