2016-04-07 11 views
3

$ uibModalInstance, .ready veya .opened gibi özelliklere sahip mi? Bir UI Bootstrap modelindeki CSS sınıf öğelerini, kendisine geçirilen verilere göre değiştirmeye çalışıyorum. Modal yüklendikten sonra işlevi tetiklemenin bir yoluna ihtiyacım var. $ UibModal'ın .opened, .close ve .rendered gibi özelliklere sahip olduğunu biliyorum, ancak bu, modal denetleyicinin kendisinde değil, modal'ı oluşturan denetleyicide tetikleniyor. Ve tüm veriler modal denetleyicide olduğundan, ona harici denetleyiciden erişemiyorum.

Herhangi bir öneriniz var mı?

cevap

6

Sen modal denetleyicisi $ uibModalInstance erişebilir ve şöyle bir şey yapabilirsiniz:

angular.module('ui.bootstrap.demo').controller('ModalInstanceCtrl', function ($scope, $uibModalInstance, items) { 
    $uibModalInstance.rendered.then(function() { 
    alert('modal has rendered'); 
    }); 

    $uibModalInstance.opened.then(function() { 
    alert('modal has opened'); 
    }); 

    $uibModalInstance.closed.then(function() { 
    alert('modal has closed'); 
    }); 
}); 
İlgili konular