AngularJS – $apply seguro

image_pdfimage_print

Enquanto esta implementação não se torna a padrão do AngularJS, segue abaixo o código a ser usado para ter um $apply seguro para ser usado em qualquer parte do código.

$scope.safeApply = function(fn) {
    var phase = this.$root.$$phase;
    if( phase == '$apply' || phase == '$digest' ){
        if( fn && ( typeof( fn ) == 'function' ) ){
            fn();
        }
    } else {
        this.$apply( fn );
    }
};
Gostou? Tire um minutinho e dê sua contribuição para Drall Dev Community no Patreon!