контроллер:показать glyphicon на основе значения HTML углового
.controller('BlogController', function(blogFactory, $routeParams, $scope){
var that=this;
stat=false;
this.checkbookmark = function(bId){
console.log(bId)
blogFactory.checkBookmark(bId, function(response){
console.log(response)
if(response == "bookmarked"){
that.stat = true;
}
else{
that.stat = false;
}
})
}
HTML код:
<div class="container" ng-controller="BlogController as blogCtrl">
<div class="row" ng-repeat="chunk in blogCtrl.blogs | filter: filter_name | orderBy:'-created_at' | groupBy: 3">
<div class="outerbox1 col-sm-4" ng-repeat="blog in chunk" >
<div class="innerbox3" ng-init="blogCtrl.checkbookmark(blog._id)">
<br>
<div> > READ MORE
<a ng-if="blogCtrl.stat" ng-href="#" ng-click="blogCtrl.removebookmark(blog._id)" class="glyphicon glyphicon-heart pull-right">{{blogCtrl.stat}}</a>
<a ng-if="!blogCtrl.stat" ng-href="#" ng-click="blogCtrl.addbookmark(blog._id)" class="glyphicon glyphicon-heart-empty pull-right">{{blogCtrl.stat}}</a>
</div>
</div>
</div>
</div>
</div>
Я хочу показать glyphicon на основе значения стат
У меня 6 блогов , первые 3 закладки и следующие 3 нет.
Проблема, которую я получаю, заключается в том, что значение stat всегда задано в соответствии с последней закладкой и, следовательно, оно всегда ложно/верно (в зависимости от состояния последнего блога).
Как это решить?
Это сработало. спасибо ... теперь не могли бы вы рассказать мне, как обновлять дисплей в режиме реального времени, т. е. значок символа для изменения, если пользователь нажимает на него. @ x4rf41 – kRAk3N
как я уже сказал, вам нужно сделать те же самые изменения в функции добавления и удаления: передать весь блог не только id, а затем установить свойство blog.stat на новое значение – x4rf41
ok done, thanks @ x4rf41 – kRAk3N