如何在 RXJS Angular 5 中观察响应中没有特定名称的对象 JSON
How to observe objects in response JSON with no specyfic names in RXJS Angular 5
情况是这样的。
我需要在收到 API 的响应后动态填充 mat-table。作为响应 JSON json 数组 "files".
中有那些匿名 json 对象
"files": [
{
"title": "dummy",
"link": "https://t1.mogree.com/backmeister_content/pdfs/presentation/31347009705473837693867181531764_a.pdf",
"attachment": "dummy-atachment_name.pdf",
"userTypes": [
"ADM",
"INT"
],
"itemid": "31347009705473837693867181531764_a.pdf",
"type": 17,
"itemproviderid": 0,
"detailtype": 0
},
{
"title": "dummy",
"link": "https://t1.mogree.com/backmeister_content/pdfs/presentation/46728595498675807527841664269653_a.pdf",
"attachment": "dummy-atachment_name.pdf",
"userTypes": [
"ADM",
"INT"
],
"itemid": "46728595498675807527841664269653_a.pdf",
"type": 17,
"itemproviderid": 0,
"detailtype": 0
}
我不知道如何在这个 table 的这个项目上设置 observable。我刚收到 "files" 件商品。我需要访问那些匿名对象。
现在我的请求函数看起来像这样:
ngOnInit() {
this.apiService.getAttachments()
.map(data => data['detailresponse'])
.map(data => data['files'])
.subscribe(files => {
});
}
我需要访问以下字段:"title"、"link"、"itemId"。
也许我需要在 subscribe() 中使用第二个 observable??
试试这个,如果有效请告诉我!
ngOnInit() {
this.apiService.getAttachments()
.map(data => data['detailresponse'])
.map(data => data['files'])
.subscribe(files => {
files.forEach(file => {
console.log(file.title, file.link, file. itemId);
});
});
}
假设您的服务 returns 是一个 JSON 对象数组。在您的订阅函数中,您需要将其作为通用数组进行迭代,然后对其进行解析。
this.api.getAttachments()
.subscribe( data => {
data.files.forEach(file => {
console.log(file.title, file.link, file.itemId)
识别结构的一种简单方法是在订阅调用中放置一个调试器,并通过在开发控制台中展开它来查看对象层次结构。然后您可以基于该层次结构进行解析。
情况是这样的。 我需要在收到 API 的响应后动态填充 mat-table。作为响应 JSON json 数组 "files".
中有那些匿名 json 对象"files": [
{
"title": "dummy",
"link": "https://t1.mogree.com/backmeister_content/pdfs/presentation/31347009705473837693867181531764_a.pdf",
"attachment": "dummy-atachment_name.pdf",
"userTypes": [
"ADM",
"INT"
],
"itemid": "31347009705473837693867181531764_a.pdf",
"type": 17,
"itemproviderid": 0,
"detailtype": 0
},
{
"title": "dummy",
"link": "https://t1.mogree.com/backmeister_content/pdfs/presentation/46728595498675807527841664269653_a.pdf",
"attachment": "dummy-atachment_name.pdf",
"userTypes": [
"ADM",
"INT"
],
"itemid": "46728595498675807527841664269653_a.pdf",
"type": 17,
"itemproviderid": 0,
"detailtype": 0
}
我不知道如何在这个 table 的这个项目上设置 observable。我刚收到 "files" 件商品。我需要访问那些匿名对象。 现在我的请求函数看起来像这样:
ngOnInit() {
this.apiService.getAttachments()
.map(data => data['detailresponse'])
.map(data => data['files'])
.subscribe(files => {
});
}
我需要访问以下字段:"title"、"link"、"itemId"。 也许我需要在 subscribe() 中使用第二个 observable??
试试这个,如果有效请告诉我!
ngOnInit() {
this.apiService.getAttachments()
.map(data => data['detailresponse'])
.map(data => data['files'])
.subscribe(files => {
files.forEach(file => {
console.log(file.title, file.link, file. itemId);
});
});
}
假设您的服务 returns 是一个 JSON 对象数组。在您的订阅函数中,您需要将其作为通用数组进行迭代,然后对其进行解析。
this.api.getAttachments()
.subscribe( data => {
data.files.forEach(file => {
console.log(file.title, file.link, file.itemId)
识别结构的一种简单方法是在订阅调用中放置一个调试器,并通过在开发控制台中展开它来查看对象层次结构。然后您可以基于该层次结构进行解析。