2014-11-07 4 views
2

я использую angular.js и alertify.js в список пользователей здесь:Angularjs не обновляется с помощью alertify или диалогового плагин

Plunkr

проблема: после того, как я нажимаю меню удаления, подтверждение появится окно, затем после нажатия кнопки «ОК» удаленная строка останется там до тех пор, пока вы не нажмете кнопку «Удалить» еще раз.

Кажется, Угловой не знает, когда обновлять себя. Кто-нибудь знает, как правильно перезагрузить эту таблицу пользователей в Angular?

вот мой HTML-файл:

<table class="table"> 
    <tbody> 
    <tr ng-repeat="user in users"> 
     <td>{{ user.name }}</td> 
     <td>{{ user.age }}</td> 
     <td> 
     <button class="btn btn-danger" ng-click="removeUser($index)"> 
      Delete 
     </button> 
     </td> 
    </tr> 
    </tbody> 
</table> 

вот моя функция app.js:.

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

app.controller('DemoCtrl', function($scope, $http) { 
$scope.users = [ 
    {name: "Jack", age: 10}, 
    {name: "Bart",age: 20}, 
    {name: "Griffin",age: 40}] 

$scope.removeUser = function(index) { 
    alertify.confirm("You Sure ?").set('onok', function() { 
    $scope.users.splice(index, 1) 
    }) 
} 
}); 

ответ

6

Вы можете использовать $ объем $ применяется(), чтобы уведомить Угловыми об изменениях, которые вы сделали в контекст alertify:

$scope.$apply(function() { 
    $scope.users.splice(index, 1) 
}); 

Updated Plnkr

+0

oh .. так просто ....! Он работает сейчас. Спасибо @PhuongNguyen – DennyHiu

+0

Добро пожаловать :) –