我正在使用 ngDialog 的角度。我在我的视图中有一个带有编辑按钮的用户列表,该按钮在 ngDialog 中打开用户详细信息。现在,当我将数据保存在我的 ngDialog 中时,我希望更新用户列表。
我想为此使用观察者模式。但是处理程序不会触发。
这是我的代码:
用户控制器
angular.module('myApp')
.controller('UserController', function($scope, User){
//this method gets fired when the dialog is saved
$scope.update = function(user)
{
User.update(user);
$scope.$broadcast('refresh-users');
return true;
}
});
用户控制器:
angular.module('myApp')
.controller('UsersController', function($scope, User, ngDialog){
var loadUsers = function(users) {
$scope.users = users;
}
var handleErrors = function(response) {
console.error(response)
}
$scope.userPopup = function(id)
{
ngDialog.open(
{
template:'../partials/user.html',
controller: 'UserController',
data: {'id': id},
scope: $scope
});
}
$scope.$on('refresh-users', function handler(){
console.log('handler');
User.getAll()
.then(loadUsers)
.catch(handleErrors);
});
});
我怎么能解决这个问题?