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

elementui中樹形表格切換展開不同層級的示例代碼

 更新時間:2022年08月20日 11:52:12   作者:suoh's?Blog  
這篇文章主要介紹了elementui中樹形表格切換展開不同層級,本文通過示例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

 效果:

 代碼(復(fù)制粘貼即可):

<template>
    <div class="myDiv">
        <el-row style="margin:10px 0">
            <el-col :span="22">
                <el-button type="primary" size="mini" plain @click="expandLevel(0)">展開一級</el-button>
                <el-button type="primary" size="mini" plain @click="expandLevel(1)">展開二級</el-button>
                <el-button type="primary" size="mini" plain @click="expandLevel(2)">展開三級</el-button>
                <el-button type="primary" size="mini" plain @click="expandLevel(3)">展開四級</el-button>
            </el-col>
        </el-row>
        //下面寫法主要方便大家作為組件封裝使用
        <el-table :data="tableData" style="width: 100%" row-key="id" :expand-row-keys="expandId" border :tree-props="{children: 'children', hasChildren: 'hasChildren'}">
            <el-table-column show-overflow-tooltip :prop="item.prop" :width="item.width" :label="item.label" v-for="(item,i) in treeProps" :key="i">
                <template slot-scope="scope">
                    <!-- 自定義數(shù)據(jù)-展示slot插槽 -->
                    <slot v-if="item.slot" :name="item.prop" :scope="scope">-</slot>
                    <!-- 非自定義處理(判空) -->
                    <span v-else-if="scope.row[item.prop] === '' || scope.row[item.prop] === null">-</span>
                    <!-- 非自定義處理(展示數(shù)組數(shù)據(jù))-換行展示 -->
                    <div v-else-if="Array.isArray( scope.row[item.prop])==true">
                        <div v-for="aa in scope.row[item.prop]" ::key="aa">
                            {{aa}}
                        </div>
                    </div>
                    <!-- 非自定義處理(正常展示) -->
                    <span v-else>{{scope.row[item.prop]}}</span>
                </template>
            </el-table-column>
        </el-table>
 
    </div>
</template>
 
<script>
export default {
    name: '',
    components: {},
    props: {},
    data() {
        return {
            expandNum: 0, //展開層級的數(shù)字
            expandId: [],
            treeProps: [{ prop: 'date', label: '評估項目', width: '400' },
            { prop: 'address', label: '指標屬性', width: '300' },
            { prop: 'map', label: '采集要點', width: '300' }],
            tableData: [{
                id: 1,
                date: '快速反應(yīng)能力',
                name: '-',
                address: '-',
                level: 1,
                children: [{
                    id: 11,
                    date: '快速籌劃',
                    name: '-',
                    address: '-',
                    level: 2,
                    children: [{
                        id: 111,
                        date: '方案計劃齊全',
                        name: '-',
                        address: '-',
                        level: 3,
                        children: [{
                            id: 1111,
                            date: '四級111',
                            name: '四級111',
                            address: '定量',
                            map: ['11', '22', '33'],
                            level: 4,
                        }, {
                            id: 1112,
                            date: '四級1',
                            name: '四級2',
                            address: '定量',
                            map: ['11', '22', '33'],
                            level: 4,
                        }, {
                            id: 1113,
                            date: '四級1',
                            name: '四級3',
                            address: '定量',
                            map: ['11', '22', '33'],
                            level: 4,
                        }, {
                            id: 1114,
                            date: '四級1',
                            name: '四級4',
                            address: '定量',
                            level: 4,
                        }]
                    }]
                }]
            }, {
                id: 2,
                date: '突發(fā)事件處理能力',
                name: '-',
                address: '-',
                level: 1,
                children: [{
                    id: 21,
                    date: '隨機應(yīng)變',
                    name: '-',
                    address: '-',
                    level: 2,
                    children: [{
                        id: 211,
                        date: '方案計劃齊全',
                        name: '-',
                        address: '-',
                        level: 3,
                        children: [{
                            id: 2111,
                            date: '四級1',
                            name: '四級1',
                            level: 4,
                            address: '定量'
                        }]
                    }]
                }]
            }],
            expandNumCopy: 0,//保留當(dāng)前展開的層級
        }
    },
    created() {
    },
    methods: {
        /** 展開層級 */
        expandLevel(i) {
            this.expandNum = i
            this.expandId.splice(0);
            if (this.expandNum > 0) { //expandNum==0 為第一層級 不需要展開 大于0再執(zhí)行
                this.setExpandKeys(this.tableData1, i)
            }
        },
        /** 遞歸設(shè)置展開層級對應(yīng)的id數(shù)組 */
        setExpandKeys(dataList, num) {
            --num;
            if (num >= 0) {
                for (var i = 0; i < dataList.length; i++) {
                    this.expandId.push(`${dataList[i].id}`);
                    if (dataList[i].children) {
                        this.setExpandKeys(dataList[i].children, num);
                    }
                }
            }
        },
 
    },
    mounted() { }
}
</script>
<style lang="scss" scoped>
</style>

注意:效果圖的表格樣式?jīng)]貼出來,自己定義就好。

到此這篇關(guān)于elementui中樹形表格切換展開不同層級的文章就介紹到這了,更多相關(guān)elementui樹形表格內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue動畫事件詳解及過渡動畫實例

    Vue動畫事件詳解及過渡動畫實例

    通過 Vue.js 的過渡系統(tǒng),可以在元素從 DOM 中插入或移除時自動應(yīng)用過渡效果。Vue.js 會在適當(dāng)?shù)臅r機為你觸發(fā) CSS 過渡或動畫,你也可以提供相應(yīng)的 JavaScript 鉤子函數(shù)在過渡過程中執(zhí)行自定義的 DOM 操作
    2019-02-02
  • vue中的router-view組件的使用教程

    vue中的router-view組件的使用教程

    這篇文章主要介紹了vue中的router-view組件的使用教程,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-10-10
  • vue中關(guān)于router.beforeEach()的用法

    vue中關(guān)于router.beforeEach()的用法

    這篇文章主要介紹了vue中關(guān)于router.beforeEach()的用法,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 解決vue-cli腳手架打包后vendor文件過大的問題

    解決vue-cli腳手架打包后vendor文件過大的問題

    今天小編就為大家分享一篇解決vue-cli腳手架打包后vendor文件過大的問題。具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • vue3+vite配置多頁面的示例代碼

    vue3+vite配置多頁面的示例代碼

    通過配置多頁面應(yīng)用,從而將給子模塊依賴分隔開各自加載,可以減少初始資源的請求,加快頁面的訪問速度,這篇文章主要介紹了vue3+vite配置多頁面的詳細過程,需要的朋友可以參考下
    2023-06-06
  • 淺談vue中關(guān)于checkbox數(shù)據(jù)綁定v-model指令的個人理解

    淺談vue中關(guān)于checkbox數(shù)據(jù)綁定v-model指令的個人理解

    這篇文章主要介紹了淺談vue中關(guān)于checkbox數(shù)據(jù)綁定v-model指令的個人理解,v-model用于表單的數(shù)據(jù)綁定很常見,下面就來詳細的介紹一下
    2018-11-11
  • 在 React、Vue項目中使用SVG的方法

    在 React、Vue項目中使用SVG的方法

    本篇文章主要介紹了在 React、Vue項目中使用SVG的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • Vue3+Element?Plus按需引入(自動導(dǎo)入)詳解

    Vue3+Element?Plus按需引入(自動導(dǎo)入)詳解

    element-plus根據(jù)官網(wǎng)文檔,推薦用戶采用按需導(dǎo)入的方式進行導(dǎo)入,下面這篇文章主要給大家介紹了關(guān)于Vue3+Element?Plus按需引入(自動導(dǎo)入)的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-10-10
  • element-ui中el-upload多文件一次性上傳的實現(xiàn)

    element-ui中el-upload多文件一次性上傳的實現(xiàn)

    這篇文章主要介紹了element-ui中el-upload多文件一次性上傳的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • 如何使用 Vuex的入門教程

    如何使用 Vuex的入門教程

    在vue中當(dāng)我們管理數(shù)據(jù)的時候比較亂,我們要用到下面的這個庫,本文主要介紹了如何使用 Vuex的入門教程,具有一定的參考價值,感興趣的可以了解一下
    2022-02-02

最新評論

岑溪市| 和平区| 东山县| 图们市| 大新县| 阜南县| 吉木萨尔县| 绥中县| 嘉峪关市| 东海县| 富川| 偃师市| 潜江市| 台南市| 高邮市| 铅山县| 固原市| 连云港市| 宜川县| 崇义县| 嘉善县| 垦利县| 金川县| 新龙县| 英德市| 余干县| 安福县| 安溪县| 赤水市| 林州市| 灵璧县| 三河市| 秀山| 双柏县| 房山区| 临漳县| 岳普湖县| 伊春市| 普格县| 长寿区| 麻栗坡县|