如何使用ngdialog在angularjs中创建未保存的更改。

例如:当前我们在第1页中,我们正在编辑某些字段。我们直接转到page2或那个时候需要弹出ngdialog的地方,询问您的移动数据是否会丢失。你要继续吗?带有选项:保存并移动,取消和丢弃并移动。
如果我选择取消,请保留同一页面。如果我选择“丢弃并移动”,则丢弃我们输入的详细信息。如果我选择保存并移动,请保存详细信息并移至相应页面,任何人都可以帮助我。

最佳答案

您可以使用普通JS中的onbeforeunload功能:

$scope.view = {};

$scope.view.dirty = true;

$scope.$watch('view.dirty', function (oldV, newV) {
    if (newV) {
        window.onbeforeunload = function(){
            return "Did you save your stuff?";
        };
    } else {
        window.onbeforeunload = null;
    }
}

关于javascript - 如何使用ngdialog在angularjs中重定向之前实现消息?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35153201/

10-09 22:39