<div v-for="(item, index) in datalist" :key="index">
<el-descriptions
:column="1"
v-for="(tem, index) in item"
:key="index"
>
<el-descriptions-item label="项目名称">
{{ tem.proName }}
</el-descriptions-item>
<el-descriptions-item label="文件名称">
{{ tem.docName }}
</el-descriptions-item>
<el-descriptions-item
label-align="center"
label="段落内容"
v-for="(tem1, index) in tem.text"
:key="index"
>
{{ tem1.text }}
</el-descriptions-item>
<el-descriptions-item label="操作">
<el-tag size="small"
><el-button
type="text"
@click="insertContent(scope)"
size="mini"
>引用</el-button
></el-tag
>
</el-descriptions-item>
</el-descriptions>
<el-divider></el-divider>
</div>
你这个应该在获取到数据,渲染之前去合并,而不是v-for的时候
原始数据需要进行数据分类,然后再渲染
例如
let list = [
{
name: '小明',
age: 10,
sex: 'male'
},
{
name: '小花',
age: 10,
sex: 'female'
},
{
name: '小张',
age: 10,
sex: 'male'
},
{
name: '小华',
age: 9,
sex: 'male'
},
{
name: '小丽',
age: 10,
sex: 'female'
},
{
name: '小红',
age: 9,
sex: 'female'
}
]
let newObj = {}
list.forEach((item, index) => {
if (!newObj[item.sex + item.age]) {
newObj[item.sex + item.age] = []
}
newObj[item.sex + item.age].push(item)
})
console.log(newObj)