zoukankan      html  css  js  c++  java
  • Vue element-ui table组件只展开一行(手风琴效果)

    直接上代码了哈~

     1 <template>
     2   <div class="app-content">
     3     <div class="table_expand_item">
     4       <b>element-ui table只展开一行demo</b>
     5       <el-table
     6         :data="tableData"
     7         :row-key="getRowKeys"
     8         :expand-row-keys="expands"
     9         border
    10         style="750px; margin-top:20px;"
    11         @expand-change="expandSelect">
    12         <el-table-column type="expand" label="展开" width="60px">
    13           <template slot-scope="scope">
    14             我是表格行展开的信息{{ scope.$index + 1 }}
    15           </template>
    16         </el-table-column>
    17         <el-table-column
    18           prop="date"
    19           label="日期"
    20           align="center" />
    21         <el-table-column
    22           prop="name"
    23           label="姓名"
    24           align="center" />
    25         <el-table-column
    26           prop="address"
    27           label="地址"
    28           align="center" />
    29       </el-table>
    30     </div>
    31   </div>
    32 </template>
    33 
    34 <script>
    35 export default {
    36   data() {
    37     return {
    38       tableData: [{
    39         id: 'a',
    40         date: '2016-05-02',
    41         name: '王小虎',
    42         address: '上海市普陀区金沙江路 1518 弄'
    43       }, {
    44         id: 'b',
    45         date: '2016-05-04',
    46         name: '王小虎',
    47         address: '上海市普陀区金沙江路 1517 弄'
    48       }, {
    49         id: 'c',
    50         date: '2016-05-01',
    51         name: '王小虎',
    52         address: '上海市普陀区金沙江路 1519 弄'
    53       }, {
    54         id: 'd',
    55         date: '2016-05-03',
    56         name: '王小虎',
    57         address: '上海市普陀区金沙江路 1516 弄'
    58       }],
    59       getRowKeys(row) { // 行数据的Key
    60         return row.id
    61       },
    62       expands: [] // 通过该属性设置Table目前的展开行,需要设置row-key属性才能使用,该属性为展开行的keys数组
    63     }
    64   },
    65   methods: {
    66     // table每次只能展开一行
    67     expandSelect(row, expandedRows) {
    68       this.expands = []
    69       if (expandedRows.length > 0) {
    70         row ? this.expands.push(row.id) : ''
    71       }
    72     }
    73   }
    74 }
    75 </script>

    结合element-ui官方文档来阅读,很快就能搞懂原理~

    如有错误,请多指教,谢谢!

  • 相关阅读:
    poj 2312 Battle City
    poj 2002 Squares
    poj 3641 Pseudoprime numbers
    poj 3580 SuperMemo
    poj 3281 Dining
    poj 3259 Wormholes
    poj 3080 Blue Jeans
    poj 3070 Fibonacci
    poj 2887 Big String
    poj 2631 Roads in the North
  • 原文地址:https://www.cnblogs.com/ykCoder/p/11046462.html
Copyright © 2011-2022 走看看