Javascript 如何为对象数组使用ng类
我有一个案例,我的回答如下Javascript 如何为对象数组使用ng类,javascript,css,angularjs,arrays,Javascript,Css,Angularjs,Arrays,我有一个案例,我的回答如下 "currency" : [ { "_id" : ObjectId("584aad5d3e2537613e5f4c39"), "name" : "USD" } ], ng-class="{'active': vm.settingsObj.currency.name.indexOf('USD') > -1 }" 我想根据姓名激活我的复选框 我试着像下面一样 "currency" : [ {
"currency" : [
{
"_id" : ObjectId("584aad5d3e2537613e5f4c39"),
"name" : "USD"
}
],
ng-class="{'active': vm.settingsObj.currency.name.indexOf('USD') > -1 }"
我想根据姓名激活我的复选框
我试着像下面一样
"currency" : [
{
"_id" : ObjectId("584aad5d3e2537613e5f4c39"),
"name" : "USD"
}
],
ng-class="{'active': vm.settingsObj.currency.name.indexOf('USD') > -1 }"
但它不起作用。有人能建议帮助吗。谢谢。您的数组只包含1项吗?因为如果是这样,您可以执行以下操作:
ng-class="{'active': vm.settingsObj.currency[0].name == 'USD' }"
希望有帮助()
您可以在控制器中设置控件
$scope.filter=函数(货币){
var json={“货币”:[
{
“_id”:“1”,
“名称”:“美元”
},
{
“_id”:“2”,
“名称”:“欧元”
}
]};
var res=json.currency.filter(函数(元素,索引){
返回elem.name==货币
})
console.log(res)
console.log(res.length)
返回res.length>0
}
您的控制器可以提前为您执行此操作吗?嗨,Daniel,我没听懂您的意思…您的vm
可以设置为已计算属性。Daniel的意思是,您应该让控制器在数组中执行搜索计算-这比直接在绑定中执行的功能更多。您甚至可以将计算包装在作用域上的方法中,然后直接在模板中将“active”类绑定到该方法。好的,但是在这里有什么办法吗