vue 获取页面详情后 切换页面时 如何监听用户是…

2018-07-09 13:47:18来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

可以用 beforeRouteLeave 和 updated 来判断。export default {

    name: 'supplier',
    components:{cmtWrap,cmtContent},
    props: [],
    beforeRouteLeave (to, from, next) {//离开当前页
      if(this.updateCount > 1){ //更新次数大于1 说明用户修改过当前页数据 因为获取详情时会更新一次
        if(from.path.includes('nowPath')){
          this.$confirm('即将离开当前页,请确定是否保存当前数据?', '离开当前页', {
            confirmButtonText: '保存',
            cancelButtonText: '不保存',
            type: 'warning'
          }).then(() => {
            //...todo 这里调接口 保存数据
            next()
          }).catch(() => {next()});
        }else{next()}
      }else{
        next()
      }
    },
    updated:function () {
      this.updateCount = this.updateCount + 1
    },
    data() {
      return {
        updateCount:0,//判断用户是否更新当前数据
      }
    },
    computed:{},
    watch:{},
    mounted:function () {
    this.getInitData()
  }, methods: {
    getInitData:function(){
    //...todo  页面进来,先获取默认数据

    }

  },
  }

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:异步是javascript的精髓

下一篇:关于javascript的一个小问题,请问有人看出啥问题吗?