Skip to content

生成 组织信息 页面,并生成单独的树组件

2025-06-06-22-19-19

在本次对话中,我的需求是生成一个树形结构的侧边栏。

我们的实现结果是分阶段的,根据不同的阶段,生成不同的结果。

参考上下文

请务必全面的阅读这些上下文。这些上下文我会动态的更新,请你注意重新读取。

这些上下文包括:

  1. 本项目的源码。可能是具体的代码,或者是文件夹目录。
  2. 参考 url 链接。

菜单树结构(采用 Element Plus 的 Tree V2 组件并支持国际化)

扩展 Elemenet Plus 的树形组件包括虚拟树组件,支持连接线

用户管理

<ReTreeLine> 组件和核心制作树形结构的侧边栏

我所期望的侧边栏,应该具有以下的功能。

树组件核心功能

  1. 纯展示:作为一个单纯的数据展示功能。作为一个单纯的展示效果,不需要考虑成表单模式。
  2. 可点击:每一个树节点,都可以点击。
  3. 节点带有 icon:使用本框架 pure-admin 的方案,实现 icon 标签的配置。要求使用 <IconifyIconOnline> 组件实现 iconify 在线图标的选取。

树组件的注意事项

这些注意事项请务必遵守,我会动态的增加这里的注意事项,请注意重新阅读。

阶段 1 制作页面

根据我给你的截图,开始制作页面。在你制作右侧的表格、分页栏、搜索栏时,应该主动的参考本项目其他页面的写法。

比如这个例子:

  • apps\admin\src\pages\property-manage\community-manage\house-decoration\index.vue

阶段 2 封装树组件

将树组件单独抽离出来,作为一个通用的渲染组件。

  1. 专用类型:渲染树节点时,渲染的每一个树节点,需要设计一个单独的类型
  2. 对外暴露常用功能节点名称查询函数获取当前选中的节点遍历并设置树的全部节点扁平化树等。
  3. 外部函数控制树的全部展开与收缩:需要对外暴露一个函数,用于直接控制树的全部展开与收缩。
  4. 封装单独的组合式 api 函数:你需要单独封装一个组合式 api 函数,将树组件常用的函数都对外暴露出去。
  5. 外部传入 iconify 字符串实现 icon 渲染:树的每一个节点都可以渲染 icon。icon 一律用 iconify 字符串来实现渲染。icon 图标在树组件内部的渲染逻辑使用 useRenderIcon 函数实现渲染。

封装树组件的实现细节

在你封装树组件时,请你遵守以下的实现细节。该部分的细节会持续增加。

ReTreeLineIcon 目录

你所生成的树组件,其目录在 apps\admin\src\components\ReTreeLineIcon 内。将树组件迁移时,请注意在此处迁移树组件。

贡献者

The avatar of contributor named as ruan-cat ruan-cat

页面历史

最近更新