当前位置:   article > 正文

element-tree-line el-tree 添加结构线 添加虚线

element-tree-line

概览:给element组件添加上虚线,通过使用插件element-tree-line

参考连接:

参考别人的博客

安装插件:

# npm
npm install element-tree-line -S

# yarn
yarn add element-tree-line -S

main.js全局注册引入插件:

 

  1. import { getElementLabelLine } from 'element-tree-line';
  2. import 'element-tree-line/dist/style.css';
  3. const ElementLabelLine = getElementLabelLine(h);
  4. app.component(ElementLabelLine.name, ElementLabelLine);

el-tree组件封装:

  1. <template>
  2. <el-tree ref="treeRef" class="tree-content" :data="props.treeData" node-key="id" :highlight-current="true"
  3. :props="props.defaultProps" icon="none" :current-node-key='0' default-expand-all :indent="props.treeIndent">
  4. <template #default="{ node, data }">
  5. <element-tree-line :node="node" :showLabelLine="false" :indent="props.treeIndent">
  6. <template v-slot:node-label>
  7. <div class="com-tree">
  8. <i v-if="data.children?.length > 0"
  9. :class="node.expanded ? 'iconfont icon-pinleijianshao' : 'iconfont icon-pinleizengjia'"
  10. class="tree-icon"></i>
  11. <span class="com-tree-text" @click="nodeClick(data)">{{ node.label }}</span>
  12. </div>
  13. </template>
  14. </element-tree-line>
  15. </template>
  16. </el-tree>
  17. </template>
  18. <script setup>
  19. let props = defineProps({ treeData: Array, defaultProps: Object, treeIndent: Number });
  20. const emits = defineEmits(['nodeClick']);
  21. const nodeClick = (data) => {
  22. emits('nodeClick', data);
  23. };
  24. </script>

el-tree页面组件使用:

 

  1. <el-scrollbar>
  2. <Tree
  3. :treeData="data.treeData"
  4. :defaultProps="defaultProps"
  5. :treeIndent="data.treeIndent"
  6. @nodeClick="hanleNodeClick">
  7. </Tree>
  8. </el-scrollbar>

 效果展示:

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/322378?site
推荐阅读
相关标签
  

闽ICP备14008679号