Vue 删除取消时报Uncaught (in promise) cancel错误解决方法

Vue 删除取消时报Uncaught (in promise) cancel错误,如下图:

 

 

 原因:this.$confirm方法内置promise方法, 所以.catch()不能省略(因为取消操作时,无法捕获),虽然不影响操作,但操作台报错

重点:在this.$confirm方法后加上  .catch(() => {})

 del() {
      let self = this
      if (!this.selectedNode) {
        this.$message.warning('请选择要删除的信息')
        return
      }
      //   确定要将选中的所有层级信息删除吗?
      self
        .$confirm('信息删除将无法找回,请仔细确认是否删除所选信息!', {
          confirmButtonText: '确定',
          cancelButtonText: '取消',
          type: 'warning',
        })
        .then(() => {
          return remove(self.selectedNode.id)
        })
        .then(() => {
          self.onLoad(self.page)
          self.$message({
            type: 'success',
            message: '操作成功!',
          })
          this.loadTree()
        })
      .catch(() => {})//在this.$confirm方法后加上.catch方法即可,注意方法内部要写完整格式,否则可能不生效
    },

 

posted @ 2023-03-08 10:08  骄傲一点才可爱  阅读(527)  评论(0编辑  收藏  举报