当前位置: 首页 > 知识库问答 >
问题:

*Ngfor模板离子2中的对象[副本]

甄华清
2023-03-14
messages = [{
    'One' : [
        {'id' : 1},
        {'id' : 2},
    ],
    'Two' : [
        {'id' : 1},
        {'id' : 2},
    ]
}] ;
<div *ngFor="let message of messages">
    <div>KEY</div>
    <div *ngFor="let value of message">VALUE</div>
</div>

在组件中:

this.messages = data['messages'] ;
this.keys = Object.keys(data['messages']);

鉴于:

<div *ngFor="let key of keys">
    <div>{{key}}</div>
    <div *ngFor="let message of messages[key]">{{message['id']}}</div>
</div>

共有1个答案

井修雅
2023-03-14

如果不想创建管道,可以公开object.keys,如下所示。

您的组件:

@Component({
    ...
})
export class YourComponent{
    objectKeys: any = Object.keys;
    messages: Array<any>;

    constructor(){}

    ...
}

HTML:

<div *ngFor="let message of messages">
    <div *ngFor="let key of objectKeys(message)">
        <div>KEY: {{ key }}</div>
        <div *ngFor="let val of message[key]">{{ val.id }}</div>
    </div>
</div>
KEY: One
1
2
KEY: Two
1
2
 类似资料:
  • 我试图在angular 2模板中显示一个对象值,特别是当我试图使用ngFor获得一个对象数组时,会给我一个错误 这是我的模型

  • 是否可以在模板驱动的表单中使用ngFor创建输入字段,并使用类似#name=“ngmodel”的东西来在另一个标记中使用name.valid? 现在,我们有一个动态的产品列表,在一个表中有一个数量字段和一个添加到购物车按钮。我想把整个事情变成一个表单,末尾有一个add all按钮,如下所示: 但是如何为NGModel每行生成一个新的变量名呢?

  • 在Angular 2中,我如何使用ngfor在重复列表中获得与NgModel的双向绑定。下面是我的plunkr和代码,但我得到了一个错误。

  • 我有一个我在离子中重新开发的应用程序,大约一年前我在离子v1中做过。我有多个模板类型,用户将从中选择,我想做一个动态组件,根据用户配置值加载其templateURL。因此,除了加载组件和获得正确的模板之外,一切都在进行中,除了当我运行应用程序时,它会给出模板错误,就好像它不知道ngModel是一个角属性一样。这是我所拥有的: 这是我的模板: 以下是我在Chrome开发工具中的错误: 无法绑定到ng

  • 我一直在Cro中使用模板(记录在https://cro.services/docs/reference/cro-webapp-template),并享受其中的潜水艇。 我目前有一个“主”模板和一些报告,比如说报告1、报告2和报告3。 比如说,在report3中,我想包含一个report1数组。 现在,假设每个报告都有以下子部分: > HTML:报告的每个实例都应该包含一些HTML代码(带有一些参数

  • 我需要声明一个可以存储不同类型容器的类。也就是说,如果它能处理STD::Bitset和STD::Array就好了。但是,这两个类需要不同的模板参数······是否可能(以及如何)使用模板化模板类和可变模板来声明此类类? 示例(但错误):