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);

文档地址

相关推荐
烂蜻蜓1 小时前
前端已死?什么是前端
开发语言·前端·javascript·vue.js·uni-app
Rowrey2 小时前
react+typescript,初始化与项目配置
javascript·react.js·typescript
谢尔登2 小时前
Vue 和 React 的异同点
前端·vue.js·react.js
祈澈菇凉6 小时前
Webpack的基本功能有哪些
前端·javascript·vue.js
记得早睡~7 小时前
leetcode150-逆波兰表达式求值
javascript·算法·leetcode
庸俗今天不摸鱼7 小时前
Canvas进阶-4、边界检测(流光,鼠标拖尾)
开发语言·前端·javascript·计算机外设
yanglamei19628 小时前
基于Python+Django+Vue的旅游景区推荐系统系统设计与实现源代码+数据库+使用说明
vue.js·python·django
[廾匸]8 小时前
cesium视频投影
javascript·无人机·cesium·cesium.js·视频投影
流烟默9 小时前
vue和微信小程序处理markdown格式数据
前端·vue.js·微信小程序
菲力蒲LY9 小时前
vue 手写分页
前端·javascript·vue.js