所有
我有一个通过路由器加载的模态元素,当我尝试显示模态时会出现问题,虽然URL已正确更改,但它没有显示出来。如果我调用init发生在$ timeout内并且延迟一段时间,则不会出现问题。我不想指定延迟时间,任何建议,以消除$ timeout和延迟时间。
这是我的代码
(function init() {
$scope.model = {
// email specific info being set here
};
$timeout(function() {
modalElement = angular.element('[ng-controller="mycontroller"] .modal');
modalElement.modal('show');
},50); // without this delay the modal element is not shown
})();
请注意,此问题仅在刷新后第一次加载模态时发生,一旦在缓存中设置模态,则不会发生此问题,可能是获取模式导致此问题的延迟。
有什么建议吗?
答案 0 :(得分:0)
used the interval and tried to check the availability of the modal object before invoking the show, did the trick. hence it can be like
var test = $interval(function() {
modalElement = angular.element('[ng-controller="mycontroller"] .modal');
if(modalElement.length ==1)
{
modalElement.modal('show');
$interval.cancel(test);
}
},50); // without this delay the modal element is not shown