ブラウザを閉じるかタブを閉じるとデータを更新するサービスを呼び出そうとしています。問題は、$http
を使用したサービスコールと私のブラウザのunloadイベントに応じたasync soそのコールをキャンセルしてブラウザを閉じることです。私はそのサービスコールに対して応答/エラーが出るまでブラウザーを待機させたい。サーバコールが完了するまでブラウザを待つことができますか?
私はe.preventDefault()
とe.stopPropagation()
を呼び出してみましたが、機能しませんでした。
function releaseDocument(e) {
EventService.releaseDocument().then(function() {
window.close();
}, function() {
window.close();
});
}
$window.onbeforeunload = releaseDocument;
$window.onunload = releaseDocument;
誰でも同じ目的を達成するための代替案を提案することはできますか?
タブが手遅れに思考の私の方法でだ閉じるまで、あなたは待っていれば。ブラウザのクラッシュまたは停電...イベントがトリガされない、またはユーザーがその時点で接続していないとみなします。失敗したリクエストをキャッチするチャンスがある場所で先に送信することをお勧めします – charlietfl
これは実行できません。 –
@charlietfl私はあなたに同意します。そのような状況のためのその罰金。今のところ、ブラウザを手動で閉じる必要があります。 –