首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数组中散列的angular2和iter

数组中散列的angular2和iter
EN

Stack Overflow用户
提问于 2016-08-01 06:25:26
回答 1查看 286关注 0票数 0

我有一个json对象,看起来像这样。

代码语言:javascript
复制
models = [{
    "mid_704a2eb91eb54299bb3cc4487bf14557": {
        "data": {},
        "name": "uberme"
    },
    "mid_8ccd9a1340b54e76915c690b46eb996a": {
        "data": {},
        "name": "test"
    }
}]

在我的模板中,如何迭代才能使表看起来像这样:

代码语言:javascript
复制
uberme mid_704a2eb91eb54299bb3cc4487bf14557
test  mid_8ccd9a1340b54e76915c690b46eb996a

我只知道如何做下面的,但没有工作;

代码语言:javascript
复制
      <tr *ngFor="let model of models">
      {{ model | json}}
      <td>{{ model.name }}</td>
EN

回答 1

Stack Overflow用户

发布于 2016-08-01 07:31:57

问题是这些属性名(比如mid_704a2eb91eb54299bb3cc4487bf14557)不是固定的,也不是事先知道的,所以您需要使用Object.keys()来获取它们的值。

因此,当models为:

代码语言:javascript
复制
models = [{
    "mid_704a2eb91eb54299bb3cc4487bf14557": {
        "data": {},
        "name": "uberme"
    },
    "mid_8ccd9a1340b54e76915c690b46eb996a": {
        "data": {},
        "name": "test"
    }
}]

然后Object.keys(models[0])返回['mid_704a2eb91eb54299bb3cc4487bf14557', 'mid_8ccd9a1340b54e76915c690b46eb996a']

这样,如果对象始终保持该结构,则可以使用类似以下内容:

代码语言:javascript
复制
<tr *ngFor="let key of Object.keys(models[0])">
    <td>{{ models[0][key].name }}  {{ key }}</td>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38688876

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档