当前位置: 首页 > article >正文

移动端,树形数据的一种展示形式

若数据以卡片形式展示为例

与后端配合,返回如hasChildren字段,判断此数据是否有子节点,若是有子节点,则点击卡片头部显示‘>’符号,表示可点击卡片头部获取子节点数据。

上图最上方模拟面包屑,后端可返回卡片的全路径,将全路径处理为面包屑形式

        <view class="uni-breadcrumb" v-if="breadcrumbList.length > 0">
            <view class="uni-breadcrumb-item" v-for="(item, index) in breadcrumbList" :key="index">
                <text @click="handleBreadcrumbClick(item)" class="breadcrumb-item">
                    {{ item.label }}
                </text>
                <text v-if="index < breadcrumbList.length - 1" class="uni-breadcrumb-separator"> > </text>
            </view>
        </view>

获取卡片的id,传给后端,获取这个id的孩子节点数据,

const breadcrumbList = ref([])

//点击>的函数
    const getSubTask = (id) =>{

      breadcrumbList.value.length = 0
				if(res.data.list !== null){
					const nameList = res.data.list.task_name.split('>')
					const idList = res.data.list.task_guid.split('>')
					breadcrumbList.value.push({
						label : '返回',
						id : '0'
					})
					nameList.forEach((item, index)=>{
						breadcrumbList.value.push({
							label : item,
							id : idList[index]
						})
					})
				}

        ...获取子节点数据
    }

    const handleBreadcrumbClick = (item) => {
        getSubTask(item.id)
    }

    .uni-breadcrumb {
        width: 710rpx;
        overflow: auto;
        display: flex;
        margin: 20rpx 20rpx 0;
        .uni-breadcrumb-item {
            display: flex;
            align-items: center;  
            .breadcrumb-item {
                max-width: 300rpx;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                display: inline-block
                
            }
            .breadcrumb-item:last-child {
                color: #5677fc;
            }
        }


        .uni-breadcrumb-separator{
            padding: 0 10rpx;
        }
    }


http://www.kler.cn/a/410715.html

相关文章:

  • element-ui 中el-calendar 日历插件获取显示的第一天和最后一天【原创】
  • Linux 系统管理
  • .net 8使用hangfire实现库存同步任务
  • 双指针算法(1)
  • Scala—Collections集合概述
  • SAP ME2L/ME2M/ME3M报表增强添加字段
  • 嵌入式硬件设计:从概念到实现的全流程
  • python中的把列表组合成字典
  • 【MySQL实战45讲笔记】基础篇—— 全局锁和表锁
  • linux mount nfs开机自动挂载远程目录
  • C++ Qt QTextBrowser使用方法总结
  • FPGA实现PCIE3.0视频采集转10G万兆UDP网络输出,基于XDMA+GTH架构,提供工程源码和技术支持
  • 亚太杯数学建模A题——复杂场景下水下图像增强技术的研究 思路(更新部分)
  • docker创建vue镜像
  • 鸢尾花植物的结构认识和Python中scikit-learn工具包的安装
  • [debug]不同的window连接ubuntu的vscode后无法正常加载kernel
  • 公网弹性绑定负载均衡收费吗?
  • SpringBoot社团管理:用户体验优化
  • Rust vtable(Rust虚表、Rust虚函数表)动态绑定、Rust多态调用、通过类型引用创建trait对象(自动实例化)
  • reactflow 中 useStoreApi 模块作用
  • 探索 Docker 网络:编织容器间的通信纽带
  • 深入浅出:JVM 的架构与运行机制
  • 【Rust Iterator 之 fold,map,filter,for_each】
  • 论文阅读 - Causality Inspired Representation Learning for Domain Generalization
  • 计算机国际会议中proceedings,conference,paper,workshop,demo的区别是什么?
  • SpringBoot集成Minio实现上传凭证、分片上传、秒传和断点续传