在Angular 9中,你可以使用ActivatedRoute
服务来获取查询字符串参数,并使用它来获取数据。以下是一个示例解决方法:
ActivatedRoute
和HttpClient
:import { ActivatedRoute } from '@angular/router';
import { HttpClient } from '@angular/common/http';
ActivatedRoute
和HttpClient
:constructor(private route: ActivatedRoute, private http: HttpClient) { }
queryParamMap
属性从ActivatedRoute
中获取查询字符串参数:this.route.queryParamMap.subscribe(params => {
const id = params.get('id');
// 使用id参数来获取数据
});
HttpClient
发送HTTP请求来获取数据。例如,使用get
方法获取数据:this.http.get('your-api-url?id=' + id).subscribe(data => {
// 处理获取到的数据
});
完整的组件示例代码如下所示:
import { Component } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { HttpClient } from '@angular/common/http';
@Component({
selector: 'app-your-component',
templateUrl: './your-component.component.html',
styleUrls: ['./your-component.component.css']
})
export class YourComponentComponent {
constructor(private route: ActivatedRoute, private http: HttpClient) { }
fetchData() {
this.route.queryParamMap.subscribe(params => {
const id = params.get('id');
this.http.get('your-api-url?id=' + id).subscribe(data => {
// 处理获取到的数据
});
});
}
}
请注意,你需要将'your-api-url'
替换为实际的API URL,然后在subscribe
方法中处理获取到的数据。
希望这个示例能帮助到你!