在使用 *ngFor
迭代对象时,我对如何在 angular2 中获取对象的 key
和 value
有点困惑。我知道在 Angular 1.x 中有类似的语法
ng-repeat="(key, value) in demo"
但我不知道如何在 angular2 中做同样的事情。我尝试过类似的方法,但没有成功:
<ul>
<li *ngFor='#key of demo'>{{key}}</li>
</ul>
demo = {
'key1': [{'key11':'value11'}, {'key12':'value12'}],
'key2': [{'key21':'value21'}, {'key22':'value22'}],
}
这是我尝试的 plnkr: http ://plnkr.co/edit/mIj619FncOpfdwrR0KeG?p=preview
如何使用 --- 动态获得 key1
和 key2
*ngFor
?经过广泛搜索,我发现了使用管道的想法,但我不知道如何去做。在angular2中是否有任何内置管道可以做同样的事情?
原文由 Pardeep Jain 发布,翻译遵循 CC BY-SA 4.0 许可协议
与 最新版本的 Angular (v6.1.0) 一样,Angular 团队添加了新的内置管道,名称与
keyvalue
管道相同,以帮助您在common
中迭代对象、映射和数组---
角包模块。例如 -要保持原始顺序,请使用
keyvalue:onCompare
,并在组件中定义回调:
工作分叉示例
在这里查看更多有用的信息 -
如果您使用的是 Angular v5 或更低版本,或者您想使用管道实现,请遵循此答案