我正在尝试根据函数内部的条件使用 ng-class,但有时切换不起作用。我使用了 $scope.getBookmarkIcon 函数,这样即使在页面刷新后我也可以使用 bookmarkIcon 类选择 ng-class,但它不是工作属性。
$scope.bookmarks = $cookieStore.get('data_bookmark') ? $cookieStore.get('data_bookmark') : { items:[] };
console.log($scope.bookmarks);
$scope.saveBookmark = function(resortId) {
$scope.bookmarks.items.push({ id:resortId });
$cookieStore.put('data_bookmark',$scope.bookmarks);
var cookie = $cookieStore.get('data_bookmark');
console.log($scope.bookmarked);
console.log(cookie);
};
$scope.removeBookmark = function(resortId) {
var data = $scope.bookmarks.items;
for(var key in data) {
if(data[key].id===resortId) {
var index = Object.keys(data).indexOf(key);
$scope.bookmarks.items.splice(index, 1); break;
}
}
$cookieStore.put('data_bookmark',$scope.bookmarks);
var ncookie = $cookieStore.get('data_bookmark');
console.log($scope.bookmarked);
console.log(ncookie);
};
$scope.getBookmarkIcon = function(resortId)
{
$scope.bookmarked = false;
var dataList = $scope.bookmarks.items;
dataList.filter(function(item) {
if(item.id===resortId) {
$scope.bookmarked = true;
}
});
return $scope.bookmarked;
};
}]);
这是我到目前为止所尝试的: http ://plnkr.co/edit/raZeNb9FdCtfsf6FanU5?p=preview