Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como implementar a atualização automática da visualização assim que houver alteração no banco de dados no AngularJs?


Para atualização 'automática' das visualizações, usei o Grails Events Push Plugin, sugiro que você dê uma olhada.http://grails.org/plugin/events-push

É muito fácil enviar os eventos para o navegador e no cliente ouvi-los e atualizar o escopo do AngularJS com as informações apropriadas.

Exemplo

Um arquivo angularJS
window.grailsEvents = new grails.Events('http://myAppUrl.com', {enableXDR:true,readResponsesHeaders:false});

/**
 * Module for listening to grails events
 */
angular.module('grailsEvents', []).factory('grailsEvents', function() {
    return window.grailsEvents
});

window.myModule = angular.module('myModule',['grailsEvents'])
   .run(function(){
       grailsEvents.on('myEvent',function(data){
          //Every time an event occurs, this will be executed
          console.log(data);
       });
   });

MyEvents.groovy (em grails-app/conf)
events = {
    'myEvent' browser:true
}

TestController.groovy (um exemplo de um controlador que envia um evento)
class TestController{
    def index(){
       event(topic:'myEvent',data:MyDomain.list())
    }
}