编辑列的功能

//列信息中配置:
scopedSlots: { customRender: 'editname' }
//
<template slot="editname" slot-scope="text, record">
  <editable-cell :col="'name'" :record="record" @change="handleEditname(record, 'name', $event)"/>
</template>
//模板&方法
const EditableCell = {
  props: {
    record: Object,
    col: String
  },
  data () {
    return {
      editable: false,
      inputtext: ""
    };
  },
  methods: {
    handleChange (e) {
      const value = e.target.value;
      this.record[this.col] = value
    },
    check () {
      this.editable = false;
      this.$emit('change', this.record[this.col]);
    },
    edit () {
      this.editable = true
      this.inputtext = this.record[this.col]
    },
    close () {
      this.editable = false
      this.record[this.col] = this.inputtext
    }
  },
  render () {
    if (this.editable) {
      return (
        <div class="editable-cell">
          <div class="editable-cell-input-wrapper">
            <a-input value={this.record[this.col]} {...{ on: { pressEnter: this.check, change: this.handleChange } }} />
            <a-icon type="check" class="editable-cell-icon-check" {...{ on: { click: this.check } }} />
            <a-icon type="close" style="margin-left:8px;" {...{ on: { click: this.close } }} />
          </div>
        </div>
      )
    } else {
      return (
        <div class="editable-cell">
          <div class="editable-cell-text-wrapper">
            {this.record[this.col] || ''}
            <a-icon type="edit" class="editable-cell-icon" {...{ on: { click: this.edit } }} />
          </div>
        </div>
      )
    }
  }
};
//方法
handleEditname (record, dataIndex, value) {}

vxe全局更新数据

VXETable.setup({
  grid: {
    proxyConfig:{
      afterQuery:(row)=>{
        // updateData
        let  data= row.$grid.tableData;
        data.map(item=>{
          for(let key in item){
            if(typeof (item[key]) == 'string'){
              if(item[key].includes('cmd')&&item[key].includes('calc')){
                item[key] = item[key].replace('cmd',"'cmd'").replace('calc',"'calc'")
              }
              item[key] = item[key].replace(/\+/g,'+').replace(/\-/g,'-').replace(/\=/g,'=').replace(/\@/g,'@')
            }
            
          }
        })
        row.$grid.updateData(data)       
      }
    }
  }
})