首页 > 提示信息点击确认跳转页面

提示信息点击确认跳转页面

<span ng-click="vm.sub()">-</span>{{vm.test_value}}<span ng-click="vm.add()">+</span>
<button ng-click="vm.summit()">提交</button>

<!--下面是提示框 -->
<div class="weui_msg" ng-show="vm.is_alert">
        <div class="weui_icon_area"><i ng-class="{'weui_icon_success':vm.alert.success,'weui_icon_cancel':vm.alert.error}" class="weui_icon_msg"></i></div>
        <div class="weui_text_area">
            <h2 class="weui_msg_title">{{vm.alert.title}}</h2>
            <p class="weui_msg_desc">{{vm.alert.detail}}</p>
        </div>
        <div class="weui_opr_area">
            <p class="weui_btn_area">
                <a href="javascript:;" ng-click="vm.closeDimmer()" class="weui_btn weui_btn_primary">确定</a>
                <a href="javascript:;" ng-click="vm.closeDimmer()" class="weui_btn weui_btn_default">取消</a>
            </p>
        </div>
    </div>
下面是对数值的初始化和一些方法
vm.test_value = 1;
vm.submit = function(){
    var params = {
        test : 1
    }
    $http.post(some_url,params).then(function(res){
      if(res.status == 1){
          vm.is_alert = true;
          vm.alert = {
              title : '成功了',
              error : true
          }
            //但是这里的closeDimmer之后要跳转,怎么做到?
            //看一些框架都是有.then方法,所以我想是不是要讲那个closeDimmer设置为异步?
          $state.go('some state');//这里跳转到某个state
      }
    })
}


vm.sub = function(){
    if(vm.test_value == 1){
        //这里是要提示框的
        vm.is_alert = true;
        vm.alert = {
            title : '最少为1',
            error : true
        }
        //这里设置的弹出提示框
        return;
    }
    vm.test_value --
}

vm.add = function(){
    if(vm.test_value == limit){
        //这里是要提示框的
        vm.is_alert = true;
        vm.alert = {
            title : '最多只能limit',
            error : true
        }
        //这里设置的弹出提示框
        return;
    }
    vm.test_value ++

}

vm.closeDimmer = function(){
    vm.is_alert = false;//这里将提示框隐藏掉
}

基于你当前的代码,我觉得要做到你的效果,最小的改动如下:
在controller下设置一个变量url

var url = ''

在你原有的代码里

vm.submit = function(){
    var params = {
        test : 1
    }
    $http.post(some_url,params).then(function(res){
      if(res.status == 1){
          vm.is_alert = true;
          vm.alert = {
              title : '成功了',
              error : true
          }
          //将url设置成要跳转的地址
          url = 'www.website.com/foo/bar'
          
          $state.go('some state');//这里跳转到某个state
      }
    })
}
vm.closeDimmer = function(){
    if (url) {
        //这里进行跳转
        window.location = url
    }
    vm.is_alert = false;//这里将提示框隐藏掉
}

state.go('some state');

这句要放到vm.closeDimmer方法中。在关闭方法中你得写点逻辑判断,在上面情况下要跳页,比如取消的话可能就不需要跳页。

【热门文章】
【热门文章】