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

文档地址

相关推荐
痴憨道人13 分钟前
openharmony sdk描述
javascript
loey_ln17 分钟前
FIber + webWorker
javascript·react.js
大霞上仙36 分钟前
element ui table 每行不同状态
vue.js·ui·elementui
lv程序媛1 小时前
el-table表头前几列固定,后面几列根据接口返回的值不同展示不同
javascript·vue.js·elementui
ZwaterZ1 小时前
el-table-column自动生成序号&&在序号前插入图标
前端·javascript·c#·vue
蒟蒻的贤1 小时前
vue学习11.21
javascript·vue.js·学习
初遇你时动了情2 小时前
uniapp 城市选择插件
开发语言·javascript·uni-app
zongzi_4943 小时前
二次封装的天气时间日历选择组件
开发语言·javascript·ecmascript
麻辣_水煮鱼3 小时前
vue数据变化但页面不变
前端·javascript·vue.js
一条晒干的咸魚3 小时前
【Web前端】实现基于 Promise 的 API:alarm API
开发语言·前端·javascript·api·promise