AngularJS - 当我不知道它的确切位置时,调用数组中的元素

时间:2016-09-14 12:16:01

标签: angularjs

在角度上,给出像这样的$范围

$scope.colors=[{
 "key":1, 
 "color":"yellow"
},{
 "key":2, 
 "color":"pink"
},{
 "key":3, 
 "color":"black"
}];

如果我想访问视图中的某个属性,我可以这样做

  

{{颜色[2]。颜色}}

但是,如果我事先不知道范围内元素的顺序是什么,例如,是否可以调用其键为1的对象的属性颜色?像{{colors["key"=3].color}}这样的东西,但是以#34; Angular方式"。提前谢谢!

2 个答案:

答案 0 :(得分:1)

试试这个

angular.forEach($scope.colors, function(color) {
    if(color.key === 3) {
        $scope.selectedColor = color;
    }
}

然后在html视图中你可以使用这个

  

{{selectedColor.color}}

如果你想在html端执行此操作

<div ng-repeat="color in colors" ng-if="color.key===3">{{color.color}}</div>

答案 1 :(得分:1)

使用可以使用

 angular.forEach($scope.colors, function(color, index){
      if(color.key ==3){
        $scope.requiredValue = color;
        $scope.requiredIndex =index;
      }

    })

并使用

{{requiredValue.color}}{{colors[requiredIndex].color}}