+-
弹窗this.$confirm中调用函数,会报错 函数 is not a function

点击导出判断是否打印子集数据,但是这边点击取消还是确认都会报函数不是个函数。直接放到onOk里面会报错。
image.png

image.png

 // 判断是否打印子集
    dropdownMenuEvent() {
      let that = this
      this.$confirm({
        title: '要打印子集菜单吗?',
        okText: '确认',
        cancelText: '取消',
        okType: 'info',
        content: h => <div style="color:red;">导出可能需要一定时间</div>,
        onOk() {
          that.exHasChild();
          console.log('确认'); 
        },
        onCancel() {
          that.exExcel();
          console.log('取消');
        },
        class: 'test',
      });
    },
  },
  // 导出数据
  exExcel(){
    this.$api.transformer.exportExcel({}).then((data)=>{
      console.log(data);
      this.$refs.xTable.exportData({
        filename: '变压器实时数据',
        sheetName: 'Sheet1',
        type: 'xlsx',
        data
      })
    })
  },
  // 导出-包含子集数据
  exHasChild(){
    this.$api.transformer.exportExcel({
      tag: 1
    }).then((data)=>{
      console.log(data);
      this.$refs.childTable.exportData({
        filename: `变压器-实时数据(包含子集数据)`,
        sheetName: 'Sheet1',
        type: 'xlsx',
        data: data.windingList
      })
    })
  },

之前这种是可以进入的~~~~

    toggleExpandMethod ({ expanded, row }) {
      if (expanded) {
        if (row.children != []) {
          this.showConfirm(row.st_name)
          return true
        }
      }
    },
    // 判断是否打印子集
    showConfirm(st_name) {
      let that = this
      this.$confirm({
        title: '要打印子集菜单吗?',
        okText: '确认',
        cancelText: '取消',
        okType: 'info',
        content: h => <div style="color:red;">输出可能需要一定时间</div>,
        onOk() {
          console.log('确认');
          that.$api.transformer.dataCheckExportExcel({}).then((data)=>{
            console.log(data);
            that.$refs.childTable.exportData({
              filename: `变压器-数据校核-${st_name}子集数据`,
              sheetName: 'Sheet1',
              type: 'xlsx',
              data: data.trList
            })
          }) 
        },
        onCancel() {
          console.log('取消');
        },
        class: 'test',
      });
    },