报错提示是因为 v-if 和 v-else 使用了相同的 key,而 Vue 要求 v-if 和 v-else 的分支应该使用唯一的 key。

你可以尝试将 v-if 和 v-else 的分支使用不同的 key 来解决这个问题。例如,你可以使用一个动态的 key,以确保唯一性。示例代码如下:

<template>
  <el-table :data='tableData' border stripe :height='height' @row-click='handleRowClick'>
    <!-- v-for 循环取表头数据 -->
    <template v-for='item in tableHeader'>
      <table-column v-if='item.children && item.children.length' :key=''column-' + item.id' :column-header='item' />
      <el-table-column v-else :key=''table-column-' + item.id' :label='item.label' :prop='item.prop' align='center' />
    </template>
  </el-table>
</template>

在上面的代码中,我使用了一个动态的 key,通过在 key 中添加前缀来确保唯一性。例如,对于 v-if 的分支,我添加了 'column-' 前缀,而对于 v-else 的分支,我添加了 'table-column-' 前缀。

这样做可以解决报错问题。希望能帮到你!

Vue.js 中 <el-table-column> 报错 'v-if/else branches must use unique keys' 的解决方法

原文地址: https://www.cveoy.top/t/topic/qzm4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录