$ uibModal自动关闭

时间:2017-02-20 10:53:21

标签: angularjs

如果用户没有按任何模态选项,如何自动关闭模态3秒? 如果用户什么都不做,它将自动关闭

谢谢

$uibModal.open({
      backdrop: 'static',
      templateUrl: 'app/components/genericConfirmModal/generic-confirm-dialog.html',
      controller: 'GenericModalAcceptController',
      controllerAs: 'vm',
      size: 'md',
      resolve: {
        title: function() {
          return 'Anulación ticket';
        },
        icon: function() {
          return 'ok';
        },
        message: function() {
          return 'El ticket se ha anulado con éxito';
        },
        buttonMessage: function() {
          return 'Aceptar';
        }
      }
    }).result.then(function() {
      $state.go('catalog', {}, {
        reload: true
      });
    }, function() {
      $state.go('catalog', {}, {
        reload: true
      });
    });

3 个答案:

答案 0 :(得分:1)

您可以设置$ timeout:

var timer = $timeout(function () {
    // Close your modal here
}, 3000);

如果您想取消关闭,可以使用:

$timeout.cancel(timer);

答案 1 :(得分:0)

只需使用$timeout

$timeout(function() {
   $uibModal.close(); // Not sure of this synthax
}, 3000);

答案 2 :(得分:0)

只需设置3秒的时间并关闭模态

$scope.cancel = cancel;
function cancel() {
    $uibModalInstance.dismiss('cancel');
    $timeout.cancel(time);
}

var time = $timeout(function () {
   cancel();
}, 3000);