Busca

Acompanhe

RSS

Wiki UI Services #272

Loading

João Borsoi, #272, junho 2017

Palavras-chave: carregando

Descrição

Este serviço gerencia a exibição do widget de carregamento durante a execução de tarefas concorrentes. Ele é responsável por ajustar a variável $rooScope.loading para true ou false, identificando quando as tarefas ainda não finlizaram. Opcionalmente também ativa a variável $rootScope.block para travar a tela enquanto as tarefas são executadas.

Loading.beginTasks(block)

Este método deve ser chamado antes do início das tarefas concorrentes, que irá ativar o widget de carregamento, opcionalmente também bloqueando a tela.

Loading.pushTask()

Este método deve ser chamado antes de cada nova tarefa concorrente, e retorna um objeto deffered. Ao final da tarefa o usuário deve enviar um método resolve ou rejected do objeto deffered indicando o final da execução.

Loading.watchTasks(onSuccess,onError)

Este método deve ser chamado após o pushTask de cada tarefa, e é responsável por monitorar o final das tarefas e desativar o widget de carregamento.

Exemplo

Loading.beginTasks();
var task1 = Loading.pushTask();
var task2 = Loading.pushTask();
Loading.watchTasks();

var data1 = Search.search($scope.search1,function() {
   $scope.docList1 = data1;
   task1.resolve();
}, function() {
   task1.reject();
});

var data2 = Search.search($scope.search2,function() {
   $scope.docList2 = data2;
   task2.resolve();
}, function() {
   task2.reject();
});

Imprimir

Comentários

Adicionar Comentário