一、

后端给我的数据是下面这种格式:
"data": [
    {
      "code": "\"xiaoxue\"",
      "name": "\"小学\"",
      "question": {
        "entryCount": 1000,
        "processCount": 1000,
        "reviewCount": 1000,
        "publishCount": 1000
  },...]

发现在table组件里进行遍历data的时候,当数据写成props:'question.entryCount'的时候,在el-table里添加show-summary属性后,在最后一行无法进行合计,巴嘎!
尝试使用summary-method自定义合计方法也无用,最后想处理下数据
二、

//扁平化对象将数组中question.entryCount提出来改为questionentryCount添加到外层就可以正常合计了
flattenObj(obj) {
  const result = {}
  const process = (key, value) => {
    // 首先判断是基础数据类型还是引用数据类型
    if (Object(value) !== value) {
      // 基础数据类型
      if (key) {
        result[key] = value
      }
    } else if (Array.isArray(value)) {
      for (let i = 0; i < value.length; i++) {
        process(`${key}[${i}]`, value[i])
      }
      if (value.length === 0) {
        result[key] = []
      }
    } else {
        //逻辑在此
      const objArr = Object.keys(value)
      objArr.forEach(item => {
        // process(key ? `${key}.${item}` : `${item}`, value[item])
        process(key ? `${key}${item}` : `${item}`, value[item])
      })
      if (objArr.length === 0 && key) {
        result[key] = {}
      }
    }
  }
  process('', obj)
  return result
}

Lito
1 声望1 粉丝