Buenos Días, ejecuto el ngDialog pero una vez que este termina su trabajo haciendo clic por ejemplo en editar quiero que la lista que tengo de frases se me actualise automaticamente.
tengo mi controller:
(function() {
'use strict';
angular
.module('admin')
.controller('FraseController', FraseController);
FraseController.$inject = ['FraseService','ngDialog'];
function FraseController(FraseService,ngDialog) {
var vm = this;
vm.texto = 'Frase Ocasional';
vm.listar = [];
vm.nfrase = '';
vm.efrase = '';
vm.eid = 0;
activate();
vm.edit = function(){
FraseService.set_id(vm.eid);
ngDialog.open({
template: 'editFrase',
controllerAs: 'efrase',
controller: ['FraseService', function(FraseService) {
var vm = this;
vm.eid = FraseService.get_id();
vm.frase = {};
cargar();
function cargar(){
FraseService.get(vm.eid).then(function(response){
vm.frase = response.data.response;
});
}
vm.editar = function(){
if(FraseService.update(vm.frase)){
refresh(); // este es el método que me refrescaría la lista del controlador padre que visualiso en mi html pero no me funciona y como uso this no se como escalar para llamar al $scope padre pero tampoco se si eso funcionaría pues como en el padre no uso scope sino this no entiendo esto bien.
}
}
}]
});
}
vm.drop = function(){
FraseService.drop(vm.eid).then(function(response) {
console.log(response.data.response);
refresh(); // aqui si me funciona;
});
}
function refresh(){
FraseService.getAll().then(function(response) {
vm.listar = response.data.response;
});
}
function activate() {
FraseService.getAll().then(function(response) {
vm.listar = response.data.response;
});
}
}
}());
Quiero que se me actualice la lista una vez se me edite un elemento que se guarda en el api que a su vez actualiza la database entonces quiero que se llame de nuevo al api y me resfresque la lista que tengo.
Saludos cordiales D