Element 文件删除问题

Element-ui 文件删除功能
https://img.mukewang.com/5c9847140001896004330149.jpg

在移除之前添加 before-remove 事件弹出对话框
这个时候我点击确定 需要请求后台接口,后台返回如果没有权限就不能移除文件

beforeRemove(file){    this.$confirm(`确定移除 ${ file.name }?`)
}

handleRemove(file, fileList) {    this.$http("地址", {id}).then(res => {        //成功就直接删除了
        
        //失败
    })
}

问题:
当我点击确定删除,但是后台返回没有权限,这时候页面文件列表里面也没有这个文件了(真实文件还是在列表里面的,只是在页面上面不展示了)

期望结果:
后台返回没有权限,文件还是还是在页面上展示的


慕容森
浏览 1744回答 2
2回答

摇曳的蔷薇

跟element-ui,没任何关系的,问题关键是你使用错误造成的,页面的列表操作必须放在服务端正确返回权限后才进行操作,而不是一边操作列表,一边访问服务端;this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {           confirmButtonText: '确定',           cancelButtonText: '取消',           type: 'warning'         }).then(() => {          // 点击确认 发送请求,在请求回调中操作列表数据         }).catch(() => {          // 点击取消,什么也不做!              });

湖上湖

正确姿势:beforeRemove(){    this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {          confirmButtonText: '确定',          cancelButtonText: '取消',          type: 'warning'         }).then(() => {          // 点击确认 发送请求,在请求回调中操作列表数据         }).catch(() => {          // 点击取消,什么也不做!              });        return false  // 这一句相当重要!!}before-remove: 删除文件之前的钩子,参数为上传的文件和文件列表,若返回 false 或者返回 Promise 且被 reject,则停止上传返回一个 false,然后在on-remove钩子中处理数据就可以了
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Vue.js