【Vue】Element 文件删除问题

Element-ui 文件删除功能
【Vue】Element 文件删除问题

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

beforeRemove(file){

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

}

handleRemove(file, fileList) {

this.$http("地址", {id}).then(res => {

//成功就直接删除了

//失败

})

}

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

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

回答

beforeRemove(){

this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {

confirmButtonText: '确定',

cancelButtonText: '取消',

type: 'warning'

}).then(() => {

// 点击确认 发送请求,在请求回调中操作列表数据

}).catch(() => {

// 点击取消,什么也不做!

});

return false // 这一句相当重要!!

}

before-remove: 删除文件之前的钩子,参数为上传的文件和文件列表,若返回 false 或者返回 Promise 且被 reject,则停止上传
返回一个 false,然后在on-remove钩子中处理数据就可以了

跟element-ui,没任何关系的,问题关键是你使用错误造成的,页面的列表操作必须放在服务端正确返回权限后才进行操作,而不是一边操作列表,一边访问服务端;

this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {

confirmButtonText: '确定',

cancelButtonText: '取消',

type: 'warning'

}).then(() => {

// 点击确认 发送请求,在请求回调中操作列表数据

}).catch(() => {

// 点击取消,什么也不做!

});

以上是 【Vue】Element 文件删除问题 的全部内容, 来源链接: utcz.com/a/82547.html

回到顶部