我正在处理来自网络服务器的托管字段,如下所示:
{
"fields":{
"relationshipStatus":[
{
"fieldId":4,
"name":"Committed"
},
{
"fieldId":2,
"name":"Dating"
},
{
"fieldId":6,
"name":"Engaged"
},
{
"fieldId":3,
"name":"Exclusive"
},
{
"fieldId":7,
"name":"Married"
},
{
"fieldId":8,
"name":"Open Relationship"
},
{
"fieldId":5,
"name":"Partnered"
},
{
"fieldId":1,
"name":"Single"
}
]
}
}
我有一个下拉选择器,允许我按字段名称过滤配置文件:
<select ng-model='$storage.filter.relationshipStatus'
ng-options="option.fieldId as option.name for option in managedFields.relationshipStatus"
ng-change="changeFilter('relationshipStatus')">
<option value="">Any Relationship Status</option>
在我查看配置文件的另一个模板中,当我尝试使用{{profile.relationshipStatus}}
获取关系状态时,如果他们将其配置文件填写为已提交,则返回数字4.我了解这与Committed相关,但我不确定如何让个人资料的个人资料模板显示已提交,而不是4.我还尝试使用{{profile.relationshipStatus.value}}
我对此很新,所以我&#39;我不确定我是否可以调整这个来拉取字符串而不是数字?或者我将不得不写一些javascript来处理数字并输出实际的字符串,例如。 {{profile.relationshipStatus | relationshipToString}}
我尝试在多个示例中查找数据绑定,但我不确定我是否找到了适用的示例,因为我已经很新了。
有人可以指出我正确的方向吗?谢谢
答案 0 :(得分:0)
我认为下面的行是错误的,你试图选择fieldId并假装它作为option.name
ng-options="option.fieldId as option.name for option in managedFields.relationshipStatus"
//try this
ng-options="option.name as option.name for option in managedFields.relationshipStatus"