Hide Bootstrap 3 Modal&AngularJS重定向($ location.path)

Yas*_*vit 3 javascript jquery twitter-bootstrap angularjs twitter-bootstrap-3

我在AngularJS App中使用bootstrap 3模式作为对话框确认.当我隐藏模态并重定向模态的背景仍然存在.

$scope.delete = function () {   
  DataService.delete()
    .then(function () {
      $("#delete").modal("hide");
      $location.path("/");
    });
}
Run Code Online (Sandbox Code Playgroud)

我试过在隐藏上使用回调

$("#delete").on('hidden.bs.modal', function () { 
  $location.path("/");
}
Run Code Online (Sandbox Code Playgroud)

但是这种延迟很多.

有一个更好的方法吗?

Nik*_*los 10

但是这种延迟很多.

你可能忘记打电话了$scope.$apply().尝试将其更改为以下(如果延迟是唯一的问题),延迟应该是正常的:

$("#delete").on('hidden.bs.modal', function () {
    $location.path("/");
    $scope.$apply();
});
Run Code Online (Sandbox Code Playgroud)

在与Angular交互的Angular外部调用的所有代码(在本例中来自jQuery事件)都应该调用$apply().