最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

element-plus 按鈕展開/隱藏功能實現(xiàn)

 更新時間:2025年06月27日 12:11:08   作者:焚 城  
本文給大家介紹element-plus 按鈕展開/隱藏功能實現(xiàn),本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧

1、小記

element-plus中el-table 的 expand,箭頭控制子項顯示,有點丑。
想實現(xiàn)類似bootstrap ,用按鈕 展開/隱藏子項的功能

2、頁面

<!-- 表內(nèi)容 -->
    <el-table
      :data="tableData"
      :border="true"
      :preserve-expanded-content="true"
      style="width: 100%"
      :expand-row-keys="expands"
      :row-key="getRowKeys"
    >
      <!-- 子項 -->
      <el-table-column type="expand" width="0"><!-- width隱藏列 -->
        <template #default="props">
          <div m="4" class="expandcontent">
            <el-table :data="props.row.family" :border="true" :color="'red'">
              <el-table-column label="Name" prop="name" />
              <el-table-column label="State" prop="state" />
              <el-table-column label="City" prop="city" />
              <el-table-column label="Address" prop="address" />
              <el-table-column label="Zip" prop="zip" />
            </el-table>
          </div>
        </template>
      </el-table-column>
      <!-- 其他數(shù)據(jù)列 -->
      <el-table-column label="Date" prop="date" />
      <el-table-column label="Name" prop="name" />
      <!-- 操作 -->
      <el-table-column label="Operations">
        <template #default="props">
          <el-button type="primary" @click="toggleExpand(props.row)">
            {{ isExpanded(props.row) ? '收起' : '展開' }}
          </el-button>
        </template>
      </el-table-column>
    </el-table>

3、typescript事件

<script setup lang="tsx">
const getRowKeys = (row) => {
  return row.id
}
//展開自定義
const expands = ref<string[]>([])
const toggleExpand = (row) => {
  const key = getRowKeys(row)
  const index = expands.value.indexOf(key)
  if (index > -1) {
    expands.value.splice(index, 1) // 收起
  } else {
    expands.value.push(key) // 展開
  }
}
const isExpanded = (row) => {
  return expands.value.includes(getRowKeys(row))
}
</script>

4、測試數(shù)據(jù)

const tableData = [
  {
    id: 1,
    date: '2016-05-03',
    name: 'Tom',
    state: 'California',
    city: 'San Francisco',
    address: '3650 21st St, San Francisco',
    zip: 'CA 94114',
    expand: false,
    family: [
      {
        name: 'Jerry',
        state: 'California',
        city: 'San Francisco',
        address: '3650 21st',
        zip: 'CA 94114'
      },
      {
        name: 'Spike',
        state: 'California',
        city: 'San Francisco',
        address: '3650 21st ',
        zip: 'CA 94114'
      },
      {
        name: 'Tyke',
        state: 'California',
        city: 'San Francisco',
        address: '3650 21st ',
        zip: 'CA 94114'
      }
    ]
  },
  {
    id: 2,
    date: '2016-05-02',
    name: 'Tom',
    state: 'California',
    city: 'San Francisco',
    address: '3650 21st St, San Francisco',
    zip: 'CA 94114',
    expand: false,
    family: [
      {
        name: 'Jerry',
        state: 'California',
        city: 'San Francisco',
        address: '3650 21st St, San Francisco',
        zip: 'CA 94114'
      }
    ]
  }
]

5、樣式

<!-- 樣式 -->
<style scoped lang="scss">
// 子項背景色
:deep(.el-table__expanded-cell) {
  background-color: #cbdde2 !important;
}
// 子項居中
.expandcontent {
  width: 95%;
  margin: 0 auto;
}
</style>

到此這篇關(guān)于element-plus 按鈕展開/隱藏功能實現(xiàn)的文章就介紹到這了,更多相關(guān)element-plus按鈕展開內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue3中?provide?和?inject?用法小結(jié)

    vue3中?provide?和?inject?用法小結(jié)

    父子組件傳遞數(shù)據(jù)時,使用的是props和emit,父傳子時,使用的是?props,如果是父組件傳孫組件時,就需要先傳給子組件,子組件再傳給孫組件,如果多個子組件或多個孫組件使用時,就需要傳很多次,會很麻煩,這篇文章主要介紹了vue3中?provide?和?inject?用法,需要的朋友可以參考下
    2023-11-11
  • 詳解vue computed的緩存實現(xiàn)原理

    詳解vue computed的緩存實現(xiàn)原理

    這篇文章主要介紹了vue computed的緩存實現(xiàn)原理,幫助大家更好的理解和學(xué)習(xí)使用vue,感興趣的朋友可以了解下
    2021-04-04
  • Vue2.0 事件的廣播與接收(觀察者模式)

    Vue2.0 事件的廣播與接收(觀察者模式)

    這篇文章主要介紹了Vue2.0 事件的廣播與接收(觀察者模式),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • vue+webrtc(騰訊云) 實現(xiàn)直播功能的實踐

    vue+webrtc(騰訊云) 實現(xiàn)直播功能的實踐

    本文主要介紹了vue+webrtc(騰訊云) 實現(xiàn)直播功能的實踐,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • element的el-upload組件上傳文件跨域問題的幾種解決

    element的el-upload組件上傳文件跨域問題的幾種解決

    跨域問題網(wǎng)上搜索很多,感覺情況都不一樣,本文主要介紹了element的el-upload組件上傳文件跨域問題的幾種解決,具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • Vue.js遞歸組件構(gòu)建樹形菜單

    Vue.js遞歸組件構(gòu)建樹形菜單

    這篇文章主要介紹了用Vue.js遞歸組件構(gòu)建一個可折疊的樹形菜單的教學(xué)內(nèi)容,有興趣的朋友跟著學(xué)習(xí)下。
    2017-12-12
  • 分析Vue指令實現(xiàn)原理

    分析Vue指令實現(xiàn)原理

    自定義指令是vue中使用頻率僅次于組件,其包含bind、inserted、update、componentUpdated、unbind五個生命周期鉤子。本文將對vue指令的工作原理進行相應(yīng)介紹
    2021-06-06
  • vue之子組件如何修改父組件的值

    vue之子組件如何修改父組件的值

    這篇文章主要介紹了vue之子組件如何修改父組件的值問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Vue3之狀態(tài)管理器(Pinia)詳解及使用方式

    Vue3之狀態(tài)管理器(Pinia)詳解及使用方式

    這篇文章主要介紹了Vue3之狀態(tài)管理器(Pinia)詳解及使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • vant-List-@load事件一直觸發(fā)的解決

    vant-List-@load事件一直觸發(fā)的解決

    這篇文章主要介紹了vant-List-@load事件一直觸發(fā)的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01

最新評論

呼和浩特市| 罗平县| 元江| 铜山县| 扶余县| 蒙自县| 永仁县| 东乌| 喀什市| 永安市| 金川县| 临澧县| 策勒县| 滕州市| 富蕴县| 毕节市| 玉龙| 德令哈市| 梨树县| 曲阳县| 饶阳县| 南昌县| 江山市| 南和县| 松阳县| 清河县| 浦东新区| 永城市| 治县。| 沙洋县| 湘阴县| 辽宁省| 康乐县| 会东县| 东兰县| 保德县| 高州市| 平谷区| 双牌县| 尚志市| 南和县|