当前位置:首页 > 前端教程

elementui tree

2026-03-05 23:38:57前端教程

Element UI Tree 组件使用指南

Element UI 提供了 Tree 组件用于展示树形结构数据,支持节点选择、懒加载、自定义节点内容等功能。以下为关键使用方法和示例。

基本用法

通过 data 属性传入树形数据即可渲染基础树结构。数据格式要求每个节点包含 label 和可选的 children 字段:

<el-tree :data="treeData"></el-tree>
data() {
  return {
    treeData: [{
      label: '一级节点',
      children: [{
        label: '二级节点'
      }]
    }]
  }
}

节点属性配置

支持通过 props 配置字段映射,适应不同数据结构:

<el-tree
  :data="treeData"
  :props="defaultProps">
</el-tree>
defaultProps: {
  children: 'childNodes', // 指定子节点字段名
  label: 'name' // 指定显示名称字段名
}

选择功能

启用 show-checkbox 属性可显示多选框,通过 v-model 绑定选中节点:

<el-tree
  :data="treeData"
  show-checkbox
  node-key="id"
  :default-expanded-keys="[2]"
  :default-checked-keys="[5]">
</el-tree>

懒加载

通过 lazyload 方法实现动态加载节点数据:

<el-tree
  :props="props"
  :load="loadNode"
  lazy>
</el-tree>
methods: {
  loadNode(node, resolve) {
    if (node.level === 0) {
      return resolve([{ name: '根节点' }]);
    }
    if (node.level > 3) return resolve([]);

    // 模拟异步加载
    setTimeout(() => {
      resolve([{
        name: '懒加载节点'
      }]);
    }, 500);
  }
}

自定义节点内容

使用 scoped slot 可完全自定义节点渲染:

<el-tree :data="data">
  <template #default="{ node, data }">
    <span class="custom-node">
      <i :class="data.icon"></i>
      {{ node.label }}
    </span>
  </template>
</el-tree>

常用方法

通过 ref 调用组件方法:

  • getCheckedNodes() 获取选中节点
  • setCheckedKeys(keys) 设置选中项
  • filter(value) 过滤树节点
this.$refs.tree.filter('searchText');

注意事项

  1. 节点需包含唯一标识字段,通过 node-key 指定
  2. 大数据量建议配合懒加载使用
  3. 样式覆盖需注意层级,避免全局污染

以上为 Element UI Tree 组件的核心功能实现方式,可根据实际需求组合使用这些特性。

elementui tree

标签: elementuitree
分享给朋友:

相关文章

elementui响应式布局

elementui响应式布局

响应式布局基础概念 响应式布局指页面能够根据屏幕尺寸自动调整结构和样式,确保在不同设备上呈现良好的用户体验。Element UI 基于 Vue.js,其组件默认支持响应式设计,但需结合 CSS 媒体查…

elementui视频

elementui视频

以下是关于 ElementUI 视频资源的整理,涵盖教程、实战案例和官方资源: ElementUI 官方视频资源 ElementUI 官方文档虽以文字为主,但部分社区或第三方平台可能有官方团队发布的…

elementui sass

elementui sass

在 Element UI 中使用 Sass Element UI 支持通过 Sass 进行样式定制,可以通过修改变量或覆盖样式来实现主题定制或组件样式调整。 安装 Sass 相关依赖: npm…

elementui日志

elementui日志

以下是关于 Element UI 日志相关的信息整理: Element UI 官方日志文档 Element UI 的更新日志(Changelog)通常可以在其 GitHub 仓库或官方文档中找到。…

elementui案例

elementui案例

Element UI 案例 Element UI 是一个基于 Vue.js 的组件库,广泛用于构建企业级中后台前端界面。以下是一些常见的 Element UI 案例和使用场景: 表单设计 Elem…

elementui admin

elementui admin

ElementUI Admin 简介 ElementUI Admin 是基于 Vue.js 和 ElementUI 的后台管理系统模板,提供丰富的组件和布局方案,适合快速开发企业级中后台应用。其特点包…