可以用 beforeRouteLeave 和 updated 来判断。export default {
name: 'supplier',
components:{cmtWrap,cmtContent},
props: [],
beforeRouteLeave (to, from, next) {//离开当前页
if(this.updateCount > ){ //更新次数大于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 +
},
data() {
return {
updateCount:,//判断用户是否更新当前数据
}
},
computed:{},
watch:{},
mounted:function () {
this.getInitData()
},
methods: {
getInitData:function(){
//...todo 页面进来,先获取默认数据 }
},
}