Angular-Strap を使用してモーダルを提供していますが、モーダルを閉じてから別のページに移動する際に問題が発生しています。何らかの理由で、 $location.path を使用していない場合にのみモーダルを閉じることができます。追加すると、モーダル自体が閉じられ、新しいページに移動しますが、灰色の背景が残ります。コールバックを探していましたが、これら 2 つのアクションを一緒に行う方法がわかりませんでした。
モーダルコール
var modal = $modal({
template: '/Product/Delete',
persist: true,
show: false,
backdrop: 'static',
scope: $scope
});
呼び出してモーダルを開く
$scope.confirmDeleteProduct = function () {
$q.when(modal).then(function (modalEl) {
modalEl.modal('show');
});
};
モーダルで削除を押したときに行われる呼び出し
$scope.deleteProduct = function (id,dismiss) {
//ProductSvc.deleteProduct(id).success(function ($resp) {
dismiss();
//$scope.hideDeleteModal = true;
$location.path('product/');
//});
//$scope.products = _.without($scope.products, product);
};
モーダルを削除
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">x</button>
<h4>Delete Product</h4>
</div>
<div class="modal-body">
<p>Do you really want to delete the product <strong>{{product.Name}}</strong>?</p>
</div>
<div class="modal-footer">
<button type="button" class="btn" ng-click="dismiss()">Cancel</button>
<button type="button" class="btn btn-primary" ng-click="deleteProduct(product.Id,dismiss);">Delete</button>
</div>
</div>
</div>