Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何为对象数组使用ng类_Javascript_Css_Angularjs_Arrays - Fatal编程技术网

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”类绑定到该方法。好的,但是在这里有什么办法吗