問題發生在我使用字符串「home」和「home 123」過濾數據時,如果我過濾「home」,那麼與「home 123」相關的內容也是選擇。這意味着即使對於「home 123」,如果我篩選子字符串「home」,布爾值也會返回true。 http://jsbin.com/jolik/1/editAngularJS過濾器問題:只比較部分字符串(子字符串)
但是,如果我使用與「家」和「產品」無關的字符串的過濾器,我會得到確切的結果。看到這個JS斌演示http://jsbin.com/rusab/1/edit
請幫助在這個問題。預先感謝您的幫助。
的Index.html:
<!DOCTYPE html>
<html ng-app="myapp">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.min.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/lodash.js/1.2.1/lodash.min.js"></script>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body ng-controller="MyApp">
<select ng-model="keyToDisplay" ng-options="key as key.key for key in keys"></select>
<span>{{keyToDisplay.key}}</span>
<div ng-repeat="item in data | filter:{'key':keyToDisplay.key}">
<h3>{{item.key}}</h3>
<p>{{item.value}}</p>
</div>
<hr />
</body>
</html>
工作代碼:app.js
var app = angular.module('myapp', []);
app.controller('MyApp', ['$scope', function($scope) {
$scope.data = [
{key:"home",value:"hk1"},
{key:"home",value:"hk2"},
{key:"home",value:"hk3"},
{key:"home",value:"hk4"},
{key:"product",value:"pk1"},
{key:"product",value:"pk2"},
{key:"product",value:"pk3"},
{key:"product",value:"pk4"},
{key:"service",value:"sk1"},
{key:"service",value:"hk2"},
{key:"service",value:"hk3"},
{key:"service",value:"hk4"}
];
$scope.datafiltered = _.groupBy($scope.data, 'key');
$scope.keys = _.unique($scope.data, 'key');
$scope.keyToDisplay = $scope.keys[0];
}]);
發行代碼:app.js
var app = angular.module('myapp', []);
app.controller('MyApp', ['$scope', function($scope) {
$scope.data = [
{key:"home",value:"hk1"},
{key:"home",value:"hk2"},
{key:"home",value:"hk3"},
{key:"home",value:"hk4"},
{key:"home 123",value:"pk1"},
{key:"home 123",value:"pk2"},
{key:"home 123",value:"pk3"},
{key:"home 123",value:"pk4"},
{key:"service",value:"sk1"},
{key:"service",value:"hk2"},
{key:"service",value:"hk3"},
{key:"service",value:"hk4"}
];
$scope.datafiltered = _.groupBy($scope.data, 'key');
$scope.keys = _.unique($scope.data, 'key');
$scope.keyToDisplay = $scope.keys[0];
}]);
+1'鍵key.key在keys'關鍵;) – angabriel