news 2026/4/16 4:00:05

封装表格操作列按钮

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
封装表格操作列按钮

效果图:

界面引用

<template> <div> <AvueRightButton :button-list="[ { label: '配置', onClick: () => {}, }, { label: '新增模块', onClick: () => {}, }, { label: '爬取结果', onClick: () => {}, }, { label: '新增', onClick: () => {}, }, { label: '执行', disabled: true, type: 'info', }, { label: '作废', onClick: () => {}, }, ]" /> </div> </template> <script lang="ts" setup> import AvueRightButton from "../../components/AvueRightButton/index.vue"; </script> <style scoped lang="scss"></style>

组件

<template> <div style="display: flex;align-items: center;"> <el-button v-for="item in flatBtns" :key="item.label" :disabled="item.disabled" link :type="item.type || 'primary'" @click="onClick(item)"> {{ item.label }}</el-button> <el-dropdown v-if="moreBtns.length > 0" style="margin-left:12px;"> <el-button link type="primary">更多</el-button> <template #dropdown> <el-dropdown-menu> <div v-for="item in moreBtns" :key="item.label"> <el-dropdown-item> <el-button :disabled="item.disabled" link :type="item.type || 'primary'" @click="onClick(item)"> {{ item.label }} </el-button> </el-dropdown-item> </div> </el-dropdown-menu> </template> </el-dropdown> </div> </template> <script setup lang="ts"> import { PropType, ref, watch } from 'vue'; defineOptions({ name: 'AvueRightButton', }); const props = defineProps({ buttonList: { default: () => [], type: Array as PropType<any[]> }, }); const flatBtns = ref<any[]>([]); const moreBtns = ref<any[]>([]); watch( () => props.buttonList, (newList) => { const showBtns = newList?.filter((b: any) => (b.vAcl || b.vAcl === undefined) && b.vIf !== false); if (showBtns.length > 0) { if (showBtns.length <= 4) { flatBtns.value = showBtns; moreBtns.value = []; } else { flatBtns.value = showBtns.slice(0, 3); moreBtns.value = showBtns.slice(3); } }else { flatBtns.value = []; moreBtns.value = []; } }, { deep: true, immediate: true }, ); function onClick(item: any) { item.onClick(); } </script> <style lang="scss" scoped></style>
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/13 8:47:18

648678678

678687678

作者头像 李华
网站建设 2026/4/13 14:36:46

MCP概念和实践

MCP&#xff08;模型上下文协议&#xff09;是一种用于将 AI 应用程序连接到外部系统的开源标准。 使用 MCP&#xff0c;Claude 或 ChatGPT 等 AI 应用程序可以连接到数据源&#xff08;例如本地文件、数据库&#xff09;、工具&#xff08;例如搜索引擎、计算器&#xff09;和…

作者头像 李华
网站建设 2026/4/14 18:36:14

测试反馈的心理艺术:构建高效沟通的测试文化

在软件开发的生命周期中&#xff0c;测试反馈是连接开发与测试团队的关键纽带。2025年的今天&#xff0c;随着敏捷开发模式的普及和远程协作的常态化&#xff0c;测试人员面临的已不仅是技术挑战&#xff0c;更有沟通艺术的心理考验。一条有效的测试反馈不仅能准确描述问题&…

作者头像 李华
网站建设 2026/4/11 13:36:05

乐迪信息:人员违规识别新方案!AI摄像机+智慧煤矿,降本增效保安全

在众多技术创新中&#xff0c;基于AI视觉识别技术的智能监控系统&#xff0c;正逐步成为提升煤矿安全管理水平、实现降本增效的关键工具。人员违规识别作为安全生产管理中的重要一环&#xff0c;也因AI摄像机的引入而迎来新的解决方案。 一&#xff1a;煤矿安全 煤矿生产环境复…

作者头像 李华
网站建设 2026/4/15 18:25:31

Higress健康检查实战指南:构建微服务高可用性的核心技术

Higress健康检查实战指南&#xff1a;构建微服务高可用性的核心技术 【免费下载链接】higress Next-generation Cloud Native Gateway | 下一代云原生网关 项目地址: https://gitcode.com/GitHub_Trending/hi/higress 在云原生微服务架构中&#xff0c;服务实例的健康状…

作者头像 李华
网站建设 2026/4/15 21:19:40

结构化机器学习项目 第一周:机器学习策略(二)数据集设置

本周为第三课的第一周内容&#xff0c;本周的内容关于在实际项目进行中的一些基本策略&#xff0c;并不涉及技术性的知识。经过整个第一课和第二课后&#xff0c; 我们已经了解了足够支持我们构建一个完整的基础神经网络项目的知识和技术&#xff0c;本周便是在这些基础上的一个…

作者头像 李华