javascript - angularjs ng-repeat 使用索引而不是名称
问题描述
我使用 ng-repat 用数组填充 html 表。
我在规范化数组中每个属性的命名时遇到问题。
有些用户非常固执,如果可能的话,现在我必须找到一个快速的解决方法。
我的数组 AgendaItems 有时像:
{"Agenda Item":"1","Legistar ID":"62236","Title":"Approval of Minutes","Meeting ID":"49837"}
其他时间是这样的:
{"AgendaItem":"1","LegistarID":"62236","Title":"Approval of Minutes","MeetingID":"49837"}
的HTML:
<tbody ng-repeat="ai in AgendaItems">
<tr>
<td>{{ai.MeetingID}}</td>
<td>{{ai.AgendaItem}}</td>
<td>{{ai.LegistarID}}</td>
<td>{{ai.Title}}</td>
</tr>
</tbody>
有没有一种方法可以使用索引值来代替,例如: ai.[i] 这样我就不必担心列的名称之间是否有空格?
任何帮助深表感谢。
谢谢你,伊拉斯莫
解决方案
您可以隐式访问指令自动提供的ng-repeat
范围属性。$index
但是,$index
在迭代对象而不是数组时使用是相当有问题的。
您似乎追求的是一种迭代对象的键和值的方法,这是毫无疑问的,实际上也ng-repeat
通过"(key, value) in object"
语法支持。名称key
和value
是任意的。
这是如何写的:
首先,对于单个agendaItem
,ai
<div>
<div ng-repeat="(key, value) in ai">{{key}}: {{value}}</div>
</div>
其次,在问题的背景下
<tbody ng-repeat="ai in AgendaItems">
<tr>
<td ng-repeat="(key, value) in ai">{{value}}</td>
</tr>
</tody>
推荐阅读
- ios - Unity iOS 使文件类型启动您的应用程序并获取文件路径
- discord.js - discord.js 中的停止循环
- xslt - 从子节点获取父节点并重命名
- python - Pytorch Batchnorm 层不同于 Keras Batchnorm
- javascript - Facebook javascript api 调用停止发送
- prolog - PROLOG程序语义和练习
- mysql - 如何比较逗号分隔字段以查找出现次数
- python - 训练二进制 CNN (Keras) - 训练时间慢
- javascript - 如何使用 gatsby-ant-plugin 从 api 获取表数据
- firebase-mlkit - 如何使用 ML Kit 提供不同的模型来支持 a/b 测试?