防止页面导航-SweetAlert

时间:2018-07-02 05:10:34

标签: javascript angularjs sweetalert

我正尝试用甜蜜警报对话框替换JS对话框。

在正常情况下,它可以完美运行。

但是,在确认时浏览页面时。没用

JS框:

var confirm = window.confirm("Warning! You may have unsaved data,it will be lost..!" + "\n" + "Are you sure want to leave this page ?");
if (confirm) {
  $scope.$eval(event); //It prevents the page to nav ,until i confirm it.
} else {
  event.preventDefault();
}

有效。

对于sweetalert,我使用的是同一情况

$scope.validation = function(event) {
    //....
    sweetAlert({
          title: "Are you sure?", //Bold text
          text: "Your will not be able to recover this imaginary file!", //light text
          type: "warning", //type -- adds appropiriate icon
          showCancelButton: true, // displays cancel btton
          confirmButtonColor: "#DD6B55",
          confirmButtonText: "Yes, delete it!",
          closeOnConfirm: false,
          closeOnCancel: false
        },
        function(isConfirm) {
          //Function that triggers on user action.
          if (isConfirm) {
            $scope.$eval(event); //????
            /*  sweetAlert(
                      'Deleted!',
                      'Your file has been deleted.',
                      'success'
                    )*/
          } else {
            event.preventDefault();
          }
        }

对于状态更改,

  .state('ModuleName',{
            url : '/ModuleName',
            templateUrl : 'ModuleMenu/ModuleName.html',
            controller : 'modulectrl',
            resolve : {
                loadPlugin : function($ocLazyLoad) {
                    return $ocLazyLoad
                    .load([
                           {
                               name : 'css',
                               insertBefore : '#app-level',
                               files : [
                                        '../static/vendors/bower_components/nouislider/jquery.nouislider.css',
 ]
                           },
                           {
                               name : 'vendors',
                               files : [
                                       '../static/vendors/bower_components/angular-farbtastic/angular-farbtastic.js' ]
                           },
                           {
                               name : 'ComliveApp',
                               files : [ '../static/scripts/controller/modulectrl.js' ]
                           } ])
                }
            }
    })

在href上,将加载相应的视图。我的观点是,在sweetAlert确认之前,不应加载页面。

提出建议/答案。

谢谢。

0 个答案:

没有答案