vue el-table组件实现展开行 默认展开全部

html 复制代码
    <el-table :data="tableData" style="width: 100%; height: 100%;font-size:1em;" :row-key="get_row"
        :expand-row-keys="expand_rowkeys">
        <el-table-column type="expand">
          <template #default="props">
            <div style="box-sizing:border-box;padding:10px">
              <el-table :data="props.row.user" :border="false">
                <el-table-column label="执行人" prop="user_name" />
                <el-table-column label="任务" prop="title" :show-overflow-tooltip="true" />
                <el-table-column label="任务状态" prop="status">
                  <template v-slot="scope">
                    <span :class="getStatusColor(scope.row.status)">{{
                      getStatusName(scope.row.status) }}</span>
                  </template>
                </el-table-column>
                <el-table-column label="截止时间" prop="finish_time" />
                <el-table-column label="操作" min-width="30" fixed="right">
                  <template v-slot="scope">
                    <div class="opera">
                      <span class="link btncomplete iconfont icon-ziyuan165"
                        v-if="scope.row.status != 2 && scope.row.status != 4 && (((userStore.info.id == scope.row.link_user_id || userStore.info.id == props.row.user_id)&&props.row.type!=3)||(userStore.info.id == scope.row.link_user_id&&props.row.type==3))"
                        @click="handle_complete(scope.row, props.row)">&nbsp;&nbsp;确认</span>
                    </div>
                  </template>
                </el-table-column>
              </el-table>
            </div>
          </template>
        </el-table-column>
        <el-table-column prop="create_user" label="创建人" show-overflow-tooltip />
        <el-table-column prop="date" label="截止时间" show-overflow-tooltip />
        <el-table-column prop="created_at" label="创建时间" show-overflow-tooltip />

        <el-table-column label="操作" min-width="30" fixed="right">
          <template v-slot="scope">
            <div class="opera">
              <el-tooltip class="box-item" effect="dark"
                v-if="(scope.row.type == 3 || scope.row.user_id == userStore.info.id && scope.row.type != 3) && scope.row.status != 2"
                content="编辑" placement="top">
                <span class="iconfont icon-bianji" @click="handle_edit(scope.row)"></span>
              </el-tooltip>
              <el-tooltip class="box-item" effect="dark" content="关闭"
                v-if="scope.row.task_status != 4 && scope.row.status != 2 && (scope.row.type != 1 || (scope.row.type == 1 && scope.row.user_id == userStore.info.id))"
                placement="top">
                <span class="iconfont icon-guanbi" @click="handle_close(scope.row)"></span>
              </el-tooltip>
            </div>
          </template>
        </el-table-column>
      </el-table>

获取数据的时候

javascript 复制代码
 expand_rowkeys.value = tableData.value.map(x => x.id);

文档地址

相关推荐
胡志辉的博客2 分钟前
【完全开源】IP 纯净度检测 可一键部署到自己的CF
前端·javascript·chrome·ip·chromium
Hilaku29 分钟前
作为面试官,我最怕遇到什么样的候选人?
前端·javascript·程序员
一 乐30 分钟前
自习室座位预约管理系统|基于springboot + vue自习室座位预约管理系统(源码+数据库+文档)
java·vue.js·spring boot
web3d5201 小时前
01-用 Leafletjs 10 分钟搭一张水利一张图(Vue3 + Vite 实战)
前端·javascript
晚安日记wanna1 小时前
Vue2 的 defineProperty 差在哪四层追问筛掉九成候选人
前端·vue.js·面试
2603_965896623 小时前
async/await|JS同步写法解决异步终极方案
前端·javascript
dy171714 小时前
vue2树节点刷新后定位到上一节点展开
vue.js
高级程序源18 小时前
django大学生创新创业项目管理系统94923-计算机课程设计、毕业设计
javascript·vue.js·spring boot·后端·python·django·课程设计
lizz227618 小时前
Babel插件手册
javascript
VXbishe21 小时前
【课程设计】基于SpringBoot的乡村政务服务系统的设计与实现-计算机毕设77011
javascript·vue.js·spring boot·python·php·课程设计·政务