我正在构建我的第一个成熟的 Angular 应用程序,并遇到了一个有趣的怪癖。我有一个模型,其数据结构是这样的:
{
id: "12345",
host: {
name: "someHostServer",
ip-addresses: [
"1.2.3.4",
"10.11.12.13"
]
}
}
我正在渲染一个页面,其中该结构被分配给上下文中的“数据”,大致如下:
ID:{{data.id}}
主机:{{data.host.name}}
IP 地址:
<span ng-repeat="address in data.host.ip-addresses">
{{address}}<br />
</span>
ID 将显示,主机名将显示,但是地址?没什么。这是因为 IP 地址中的连字符吗?如果是这样,有没有一种简单的方法来进行数据转换?我从一个简单的 $resource
工厂获取这些数据。
最佳答案
如果使用.
(点)获取对象属性,则属性名称中不能包含-
(连字符)。
因此您必须使用['property-name']
来访问它。
<span ng-repeat="address in data.host['ip-addresses']">
{{address}}<br />
</span>
关于javascript - Angular 是否接受带有连字符的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21679964/