2017-04-21 44 views
0

我的問題是啓動應用類不應該納克級的心不是工作做好,而不是驗證表達

var app = angular.module('plunker', ['angular.filter']); 
 

 
app.controller('MainCtrl', function($scope) { 
 
    $scope.colores = [{ 
 
    "name": "red" 
 
    }, { 
 
    "name": "blue" 
 
    }, { 
 
    "name": "pink" 
 
    }, { 
 
    "name": "green" 
 
    }, { 
 
    "name": "orange" 
 
    }]; 
 
    
 
    $scope.color = []; 
 
    
 
    $scope.setColors = function(x){ 
 
    if(x == 1){ 
 
     $scope.color = ['red', 'blue', 'orange']; 
 
    }else{ 
 
     $scope.color = ['green', 'pink']; 
 
    } 
 
    
 
    console.log($scope.color); 
 
    } 
 
    
 
    $scope.changeColor = function(pColor){ 
 
    return $.inArray(pColor, $scope.color); 
 
    }; 
 
    
 
});
/* Put your css in here */ 
 

 
.red{background: red;}
<!DOCTYPE html> 
 
<html ng-app="plunker"> 
 

 
<head> 
 
    <meta charset="utf-8" /> 
 
    <title>AngularJS Plunker</title> 
 
    <script> 
 
    document.write('<base href="' + document.location + '" />'); 
 
    </script> 
 
    <link rel="stylesheet" href="style.css" /> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script> 
 
    <script data-require="[email protected]" src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.11/angular.js" data-semver="1.5.11"></script> 
 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-filter/0.5.16/angular-filter.js"></script> 
 
    <script src="app.js"></script> 
 
</head> 
 

 
<body ng-controller="MainCtrl"> 
 
    
 
<select ng-model="x"> 
 
    <option value="0">0</option> 
 
    <option value="1">1</option> 
 
</select> 
 
<button ng-click="setColors(x)">Change</button> 
 
    
 

 
<div ng-repeat="color in colores | filter: { category: subcategory.category, subcategory: subcategory.subcategory }"><!--Level 3--> 
 
    <p ng-class="{ 'red': changeColor('{{ color.name }}') }" class=''>{{ color.name }}</p> 
 
</div> 
 

 

 
</body> 
 

 
</html>

當我的項目未驗證納克級良好,即使我需要的是,每當我的數組發生變化時,如果在數組中找到此標籤p的名稱,則p標籤將激活或停用紅色類。

我一直在尋找其他問題的解決方案,但沒有一個解決了這個問題。

我附上項目

回答

0

納克級需要一個布爾表達式:

例如

ng-class="{ 'red': color=='red' }" 

在您的例子$ scope.changeColor返回-1

+0

非常感謝你的幫助 –