【发布时间】:2016-12-29 13:40:03
【问题描述】:
我正在尝试实现一个解耦的 wordpress 解决方案,但在我的模板中显示 JSON 对象属性时有些困惑。我能够为 WP API 返回 JSON 对象,但不确定如何处理它们。我可以获得一个属性以在模板中显示它的值的唯一方法是,如果我将 [0] 添加到插值属性,这在 ngFor 循环中不起作用。我在这里阅读了@Thierry access key and value of object using *ngFor 的解决方案 但这似乎不是谷歌处理英雄之旅应用程序http://plnkr.co/edit/WkY2YE54ShYZfzJLSkMX?p=preview的方式@
Google 使用此数据集:
{
"data": [
{ "id": "1", "name": "Windstorm" },
{ "id": "2", "name": "Bombasto" },
{ "id": "3", "name": "Magneta" },
{ "id": "4", "name": "Tornado" }
]
}
对我来说它看起来像一个 JSON 对象,那么应用程序如何处理这样的事情:
<ul>
<li *ngFor="let hero of heroes">
{{hero.name}}
</li>
</ul>
我只是不清楚 RC5 中是否有允许迭代对象的更改,或者我是否仍需要以某种方式对其进行转换。我对 Angular 很陌生,可以在这个问题上使用一些指导。谢谢!!
基于 cmets 的更新,如果我想转换像 http://localhost:8888/wp-json/wp/v2/posts 这样的 api 请求,最好的方法是什么?我的返回码看起来像:
[
{
"id": 4,
"date": "2016-08-09T00:09:55",
"date_gmt": "2016-08-09T00:09:55",
"guid": {
"rendered": “http://localhost:8888/?p=4"
},
"modified": "2016-08-09T00:11:05",
"modified_gmt": "2016-08-09T00:11:05",
"slug": “wp-api-test”,
"type": "post",
"link": "http://localhost:8888/2016/08/wp-api-test”,
"title": {
"rendered": "testing the wp api"
},
"content": {
"rendered": "<p>loreum ipsum</p>\n"
},
"excerpt": {
"rendered": "<p>loreum ipsum</p>\n"
},
"author": 1,
"featured_media": 0,
"comment_status": "open",
"ping_status": "open",
"sticky": false,
"format": "standard",
"categories": [
1
],
}
]
【问题讨论】:
-
NgFor 仍然只适用于数组。在 plunkr 代码中,英雄是一个数组
heroes: Hero[];。 -
你想从你的 json 中渲染什么?一切?
-
好吧,ID、标题和内容是肯定的。这些是 Wordpress 博客文章,所以我正在尝试构建一个文章页面和一个单独的文章页面。
标签: json wordpress api angular