vue+element樹形結(jié)構(gòu)節(jié)點添加連線

需求頁面如下圖所示

1.png

代碼如下

1、template

<template>
    <div class="operation_box">
       <el-tree :data="data" node-key="label" class="tree" :props="defaultProps" :default-expanded-keys="['首頁']">
       </el-tree>
    </div>
</template>

2、script

<script>
export default {
    data() {
        return {
            data: [{
                id: '1',
                label: '首頁',
                children: [{
                    id: '1-1',
                    label: '黨建頭條',
                    children: [{
                        id: '1-1-1',
                        label: '中央聲音'
                    }, {
                        id: '1-1-2',
                        label: '省委部署',
                    }, {
                        id: '1-1-3',
                        label: '組工動態(tài)',
                    }, {
                        id: '1-1-4',
                        label: '市縣快訊',
                    }]
                }, {
                    id: '1-2',
                    label: '熱點資訊',
                    children: [{
                        id: '1-2-1',
                        label: '中央聲音'
                    }, {
                        id: '1-2-2',
                        label: '省委部署',
                    }, {
                        id: '1-2-3',
                        label: '組工動態(tài)',
                    }, {
                        id: '1-2-4',
                        label: '市縣快訊',
                    }]
                }, {
                    id: '1-3',
                    label: '通知公告',
                    children: [{
                        id: '1-3-1',
                        label: '中央聲音'
                    }, {
                        id: '1-3-2',
                        label: '省委部署',
                    }, {
                        id: '1-3-3',
                        label: '組工動態(tài)',
                    }, {
                        id: '1-3-4',
                        label: '市縣快訊',
                    }]
                }, {
                    id: '1-4',
                    label: '黨建工作',
                    children: [{
                        id: '1-4-1',
                        label: '中央聲音'
                    }, {
                        id: '1-4-2',
                        label: '省委部署',
                    }, {
                        id: '1-4-3',
                        label: '組工動態(tài)',
                    }, {
                        id: '1-4-4',
                        label: '市縣快訊',
                    }]
                }, {
                    id: '1-5',
                    label: '干部工作',
                    children: [{
                        id: '1-5-1',
                        label: '中央聲音'
                    }, {
                        id: '1-5-2',
                        label: '省委部署',
                    }, {
                        id: '1-5-3',
                        label: '組工動態(tài)',
                    }, {
                        id: '1-5-4',
                        label: '市縣快訊',
                    }]
                }, {
                    id: '1-6',
                    label: '人才工作',
                    children: [{
                        id: '1-6-1',
                        label: '中央聲音'
                    }, {
                        id: '1-6-2',
                        label: '省委部署',
                    }, {
                        id: '1-6-3',
                        label: '組工動態(tài)',
                    }, {
                        id: '1-6-4',
                        label: '市縣快訊',
                    }]
                }, {
                    id: '1-7',
                    label: '公務(wù)員工作',
                    children: [{
                        id: '1-2-1',
                        label: '中央聲音'
                    }, {
                        id: '1-2-2',
                        label: '省委部署',
                    }, {
                        id: '1-2-3',
                        label: '組工動態(tài)',
                    }, {
                        id: '1-2-4',
                        label: '市縣快訊',
                    }]
                }, {
                    id: '1-8',
                    label: '專題',
                    children: [{
                        id: '1-8-1',
                        label: '中央聲音'
                    }, {
                        id: '1-8-2',
                        label: '省委部署',
                    }, {
                        id: '1-8-3',
                        label: '組工動態(tài)',
                    }, {
                        id: '1-8-4',
                        label: '市縣快訊',
                    }]
                }]
            }],
            defaultProps: {
                // 用于修改節(jié)點指定標(biāo)簽的屬性值
                children: 'children',
                label: 'label'
            }
        }
    },
}
</script>

3、css

.operation_box {

    /deep/ .tree {
        color: #595959;
        background: transparent;

        /* 樹形結(jié)構(gòu)節(jié)點添加連線 */
        .el-tree-node {
            position: relative;
            padding-left: 16px;

            .el-tree-node__content {
                height: 18px;
                padding-top: 16px;
                padding-left: 0 !important;

                .el-tree-node__expand-icon {
                    background: url(../../assets/img/operation/plus-square-outlined.png) no-repeat;
                    display: inline-block;
                    width: 16px;
                    height: 16px;
                    padding: 0;

                    &.expanded {
                        transform: none;
                        background: url(../../assets/img/operation/minus-square-outlined.png) no-repeat;
                    }

                    &::before {
                        content: '';
                    }

                    &.is-leaf {
                        display: none;
                    }
                }

                .el-tree-node__label {
                    margin-left: 10px;
                }

            }

            &:last-child:before {
                height: 50px;
            }

            &:before {
                content: "";
                left: -4px;
                position: absolute;
                right: auto;
                border-width: 1px;
                border-left: 1px solid #BBBBBB;
                bottom: 0px;
                height: 100%;
                top: -26px;
                width: 1px;
            }

            &:after {
                content: "";
                left: -4px;
                position: absolute;
                right: auto;
                border-width: 1px;
                border-top: 1px solid #BBBBBB;
                height: 20px;
                top: 24px;
                width: 18px;
            }

        }

        &>.el-tree-node {

            &>.el-tree-node__content{
                .el-tree-node__expand-icon{
                    background-image: url(../../assets/img/operation/folder-open-filled.png) !important;
                }
            }

            &::after {
                border: 0px solid;
            }
        }

        .el-tree-node__children {
            padding-left: 12px;
        }
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容