使用vue如何判断页面是否编辑及编辑页面未保存离开时,给出弹窗提示

379 阅读1分钟

"```markdown Vue中如何判断页面是否编辑及编辑页面未保存离开时,给出弹窗提示

在Vue中,可以通过监听路由变化和监听表单输入来判断页面是否编辑,并在编辑页面未保存离开时给出弹窗提示。

监听路由变化:

// 在Vue组件中监听路由变化
beforeRouteLeave(to, from, next) {
  if (this.isEdited) {
    if (confirm('您有未保存的修改,确定要离开吗?')) {
      next();
    } else {
      next(false);
    }
  } else {
    next();
  }
}

监听表单输入:

// 在Vue组件中监听表单输入
data() {
  return {
    formData: {},
    isEdited: false
  };
},
methods: {
  handleInput() {
    this.isEdited = true;
  },
  saveData() {
    // 保存数据的逻辑
    this.isEdited = false;
  }
}

综合以上两种方法,我们可以在Vue中判断页面是否编辑,并且在编辑页面未保存离开时给出弹窗提示,以确保用户在离开页面时能够得到及时的提醒。