您的位置:首页 > 财经 > 产业 > 中国500强企业名称_有意境的设计公司名字_杭州seo公司哪家好_关键词排名优化报价

中国500强企业名称_有意境的设计公司名字_杭州seo公司哪家好_关键词排名优化报价

2025/5/3 15:30:17 来源:https://blog.csdn.net/qq_33650655/article/details/146545641  浏览:    关键词:中国500强企业名称_有意境的设计公司名字_杭州seo公司哪家好_关键词排名优化报价
中国500强企业名称_有意境的设计公司名字_杭州seo公司哪家好_关键词排名优化报价

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦 💕

共同探索软件研发!敬请关注【宝码香车】
关注描述

csdngif标识

目录

  • DeepSeek 助力 Vue3 开发:打造丝滑的表格(Table)之添加行拖拽排序功能示例9,TableView16_09 嵌套表格拖拽排序
    • 📚前言
    • 📚页面效果
      • 📘组件代码
    • 📚代码测试
    • 📚测试代码正常跑通,附其他基本代码
      • 📘编写路由 src\router\index.js
      • 📘编写展示入口 src\App.vue
    • 📚页面效果


📚📗📕📘📖🕮💡📝🗂️✍️🛠️💻🚀🎉🏗️🌐🖼️🔗📊👉🔖⚠️🌟🔐⬇️·正文开始⬇️·🎥😊🎓📩😺🌈🤝🤖📜📋🔍✅🧰❓📄📢📈 🙋0️⃣1️⃣2️⃣3️⃣4️⃣5️⃣6️⃣7️⃣8️⃣9️⃣🔟🆗*️⃣#️⃣

DeepSeek 助力 Vue3 开发:打造丝滑的表格(Table)之添加行拖拽排序功能示例9,TableView16_09 嵌套表格拖拽排序

📚前言

Transformer 架构自 2017 年被提出以来,凭借其在自然语言处理任务中的卓越表现,成为了众多先进模型的底层基石。DeepSeek 也深深扎根于 Transformer 架构,并在其基础上进行了大胆创新和优化,形成了独具特色的模型架构。

📚页面效果

DeepSeek 助力 Vue3 开发:打造丝滑的表格(Table)之添加行拖拽排序功能示例9,TableView16_09 嵌套表格拖拽排序

📘组件代码

<!-- TableView16_09.vue 嵌套表格拖拽示例 -->
<template><div class="drag-demo"><h2>09. 嵌套表格拖拽排序</h2><Table:data="parentTasks":columns="columns"draggable@update:data="handleParentUpdate"row-key="id"borderstripeexpandable:expanded-keys="expandedKeys"@update:expandedKeys="handleExpandChange"><template #cell-task="{ row }"><div class="parent-task"><span class="expand-icon" @click.stop="toggleExpand(row)">{{ isExpanded(row) ? '▼' : '▶' }}</span>{{ row.task }}</div></template><template #expanded-row="{ row }"><div class="sub-table-container"><h4>子任务列表</h4><Table:data="row.children":columns="subColumns"draggable@update:data="(newData) => handleSubUpdate(row, newData)"row-key="id"borderclass="sub-table"/></div></template></Table></div>
</template><script setup>
import { ref } from 'vue'
import Table from '@/components/Table/Table.vue'const parentTasks = ref([{id: 1,task: '设计阶段',children: [{ id: 11, task: '原型设计', owner: '张三' },{ id: 12, task: 'UI设计', owner: '李四' },]},{id: 2,task: '开发阶段',children: [{ id: 21, task: '前端开发', owner: '王五' },{ id: 22, task: '后端开发', owner: '赵六' },]},{id: 3,task: '测试阶段',children: [{ id: 31, task: '单元测试', owner: '钱七' },{ id: 32, task: '集成测试', owner: '孙八' },]}
])const columns = [{ title: '父任务', dataIndex: 'task', width: '200px' }
]const subColumns = [{ title: '子任务', dataIndex: 'task', width: '180px' },{ title: '负责人', dataIndex: 'owner', width: '120px' }
]const expandedKeys = ref([1]) // 默认展开第一个节点const isExpanded = (row) => {return expandedKeys.value.includes(row.id)
}const toggleExpand = (row) => {const index = expandedKeys.value.indexOf(row.id)if (index > -1) {expandedKeys.value.splice(index, 1)} else {expandedKeys.value.push(row.id)}
}const handleExpandChange = (keys) => {expandedKeys.value = keys
}const handleParentUpdate = (newData) => {parentTasks.value = newData
}const handleSubUpdate = (parentRow, newSubData) => {const parentIndex = parentTasks.value.findIndex(p => p.id === parentRow.id)if (parentIndex > -1) {// 创建新数组以触发响应式更新const newParentTasks = [...parentTasks.value]newParentTasks[parentIndex] = {...newParentTasks[parentIndex],children: newSubData}parentTasks.value = newParentTasks}
}
</script><style scoped>
.drag-demo {padding: 20px;max-width: 800px;margin: 0 auto;
}.parent-task {display: flex;align-items: center;
}.expand-icon {width: 20px;height: 20px;display: inline-flex;align-items: center;justify-content: center;margin-right: 8px;cursor: pointer;user-select: none;
}.sub-table-container {padding: 15px;background: #f8f8f8;border-radius: 4px;
}.sub-table-container h4 {margin-top: 0;margin-bottom: 12px;color: #555;font-size: 14px;
}.sub-table {margin-bottom: 0;
}
</style>

📚代码测试

运行正常

📚测试代码正常跑通,附其他基本代码

  • 添加路由
  • 页面展示入口

📘编写路由 src\router\index.js

\router\index.js

import { createRouter, createWebHistory } from 'vue-router'
import RightClickMenuView from '../views/RightClickMenuView.vue'
import RangePickerView from '../views/RangePickerView.vue'const router = createRouter({history: createWebHistory(import.meta.env.BASE_URL),routes: [{path: '/',name: 'progress',component:  () => import('../views/ProgressView.vue'),},{path: '/tabs',name: 'tabs',// route level code-splitting// this generates a separate chunk (About.[hash].js) for this route// which is lazy-loaded when the route is visited.// 标签页(Tabs)component: () => import('../views/TabsView.vue'),},{path: '/accordion',name: 'accordion',// 折叠面板(Accordion)component: () => import('../views/AccordionView.vue'),},{path: '/timeline',name: 'timeline',// 时间线(Timeline)component: () => import('../views/TimelineView.vue'),},{path: '/backToTop',name: 'backToTop',component: () => import('../views/BackToTopView.vue')},{path: '/notification',name: 'notification',component: () => import('../views/NotificationView.vue')},{path: '/card',name: 'card',component: () => import('../views/CardView.vue')},{path

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com