Ant Design Vue <a-table>

问题:

Ant Design Vue <a-table>组件里面的插槽,如果按钮用a标签的话,编辑按钮根据条件判断是否禁用没有生效,还是会打开编辑弹窗。

原因:

点击a标签会触发原生的鼠标点击事件,导致禁用没有生效。

解决办法:

通过动态的设置样式,以及disabled属性可以控制编辑按钮能否点击。

html 复制代码
          <a
            @click="$emit('option', 'edit', record)"
            :style="{ pointerEvents: isEdit(record) ? 'none' : 'auto' }"
            :disabled="isEdit(record) ? true : null"
          >
            编辑
          </a>

js:

javascript 复制代码
// 是否可以编辑
function isEdit(record) {
  if (
    record.invoiceStatus === 'SUBMITTED' ||
    record.invoiceStatus === 'CANCEL' ||
    record.invoiceStatus === 'APPROVAL' ||
    record.invoiceStatus === 'POSTED'
  ) {
    return true
  }
  return false
}

效果:

相关推荐
蓝帆傲亦9 小时前
前端性能极速优化完全指南:从加载秒开体验到丝滑交互
前端·交互
鱼毓屿御9 小时前
如何给用户添加权限
前端·javascript·vue.js
JustHappy9 小时前
「web extensions🛠️」有关浏览器扩展,开发前你需要知道一些......
前端·javascript·开源
何中应9 小时前
nvm安装使用
前端·node.js·开发工具
xixixin_9 小时前
【JavaScript 】从 || 到??:JavaScript 空值处理的最佳实践升级
开发语言·javascript·ecmascript
Java新手村9 小时前
基于 Vue 3 + Spring Boot 3 的 AI 面试辅助系统:实时语音识别 + 大模型智能回答
vue.js·人工智能·spring boot
雯0609~9 小时前
hiprint:实现项目部署与打印3-vue版本-独立出模板设计与模板打印页面
前端·vue.js·arcgis
杜子不疼.9 小时前
【Linux】教你在 Linux 上搭建 Web 服务器,步骤清晰无门槛
linux·服务器·前端
belldeep9 小时前
python:用 Flask 3 , mistune 2 和 mermaid.min.js 10.9 来实现 Markdown 中 mermaid 图表的渲染
javascript·python·flask
凉辰10 小时前
使用uni.createInnerAudioContext()播放指定音频(踩坑分享功能)
开发语言·javascript·音视频