news 2026/9/2 19:29:56

封装表格操作列按钮

作者头像

张小明

前端开发工程师

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/9/2 7:46:42

【智能聊天助手部署教程 (基于 Streamlit + Ollama)】

&#x1f680; 智能聊天助手部署教程 (基于 Streamlit Ollama) 文章目录 &#x1f680; 智能聊天助手部署教程 (基于 Streamlit Ollama)✅ 1. 环境准备 (Prerequisites)&#x1f4e5; 2. 获取项目代码&#x1f6e0;️ 3. 安装依赖 (Dependencies)⚙️ 4. 配置文件设置 (Confi…

作者头像 李华
网站建设 2026/9/2 15:45:12

守护代码世界的守门人——软件测试团队心理健康白皮书

看不见的质量防线与看得见的心理负荷 在数字化浪潮席卷全球的2025年&#xff0c;软件测试工程师作为产品质量的最终守门人&#xff0c;正面临着前所未有的心理挑战。他们既要保持极致的逻辑严谨性&#xff0c;又要承受来自项目周期、技术迭代和业务期望的多重压力。这道“看不…

作者头像 李华
网站建设 2026/9/2 23:11:07

PinWin窗口置顶工具:提升Windows多任务效率的终极指南

PinWin窗口置顶工具&#xff1a;提升Windows多任务效率的终极指南 【免费下载链接】pinwin .NET clone of DeskPins software 项目地址: https://gitcode.com/gh_mirrors/pi/pinwin 在现代工作环境中&#xff0c;我们经常需要在多个窗口间频繁切换&#xff0c;这不仅浪费…

作者头像 李华
网站建设 2026/9/2 20:28:53

Sheet-to-Doc:用Excel数据和Word模板自动生成文档

作为一名商务人士&#xff0c;我经常需要创建大量重复的文档&#xff0c;如发票、报告和信函。从Excel复制数据到Word模板的过程不仅繁琐&#xff0c;而且容易出错。因此&#xff0c;当我发现WTSolutions开发的Sheet-to-Doc这款强大的网络工具时&#xff0c;我非常兴奋——它可…

作者头像 李华