Vue3 + TypeScript + Element Plus 表格行按钮不触发 row-click 事件、不触发勾选行,只执行按钮的 click 事件

点击表格行按钮不触发 row-click 事件、不触发勾选行,只执行按钮的 click 事件

点击第一行的【编辑】,第一行为当前选择行, 同时也勾选了复选框,也会执行 row-click 事件

原来的代码:

html 复制代码
            <el-table-column label="操作" header-align="center" align="center" fixed="right" width="60">
              <template #default="scope">
                <el-button type="danger" size="default" text @click="onClick(scope.row.id)">编辑</el-button>
              </template>
            </el-table-column>

要相实现点击表格行按钮不触发 row-click 事件、不触发勾选行,只执行按钮的 click 事件

只需给click增加stop修饰符即可

修改后的代码:

html 复制代码
            <el-table-column label="操作" header-align="center" align="center" fixed="right" width="60">
              <template #default="scope">
                <!-- 点击时使用 .stop 修饰符阻止事件冒泡,只会执行@click的事件逻辑,其他事件不会触发,如 @row-click="onTableRowClick" -->
                <el-button type="danger" size="default" text @click.stop="onClick(scope.row.id)">编辑</el-button>
              </template>
            </el-table-column>

应用效果:

点击第一行的【编辑】,第一行为当前选择行, 不会勾选复选框,不会执行 row-click 事件

相关推荐
英勇无比的消炎药35 分钟前
TinyRobot v0.5.0 深度解读(三):Layout 组件——如何组织复杂工作区的页面布局
前端·vue.js
英勇无比的消炎药38 分钟前
TinyRobot v0.5.0 深度解读(四):CLI 脚手架——从零搭建 AI 应用的工程化实践
前端·vue.js·github
李明卫杭州2 小时前
Vue3 响应式概念 ↔ React 对应方案(类组件与函数组件)对照笔记
前端·vue.js·react.js
英勇无比的消炎药2 小时前
拖文件进来会发生什么:TinyRobot DragOverlay 与 v-dropzone 协同指南
vue.js
Revolution612 小时前
reactive 对象重新赋值后,表单为什么没有恢复默认值
前端·vue.js·面试
古韵3 小时前
你的 uni-app 分页,一个 hook 搞定竞态和加载
javascript·vue.js·uni-app
亦暖筑序4 小时前
AgentScope-Java 入门:完善 Vue 前端、发布 GitHub,并规划下一步
java·前端·vue.js
YHHLAI6 小时前
Vue 3 流式输出实战:从零掌握 LLM Streaming 与 SSE 协议
前端·javascript·vue.js
OpenTiny社区7 小时前
拒绝臃肿!TinyRobot从“AI 输入框”到“AI输入控制台”的可扩展进化
前端·vue.js