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
}

效果:

相关推荐
铁皮饭盒2 小时前
Bun 哪比 Node.js 快?
javascript·后端
JieE21210 小时前
LeetCode 56. 合并区间|超清晰 JS 图解思路,面试高频区间题
javascript·算法·面试
runnerdancer11 小时前
LLM是怎么处理messages数组的,提示词缓存又是什么
前端·agent
陈随易11 小时前
VSCode的Copilot扩展支持接入DeepSeek,Kimi了!
前端·后端·程序员
我不是外星人13 小时前
有了 Harness Engineering ,真的还需要研发工程师吗?
前端·后端·ai编程
candyTong13 小时前
RTK 技术原理:一次典型会话里,80% 上下文是怎么省下来的
javascript·后端·架构
IT_陈寒15 小时前
JavaScript的闭包把我坑惨了,说好的内存会自动回收呢?
前端·人工智能·后端
Jackson__16 小时前
分享一个横向滚动案例,带悬停暂停,通用性很强
前端
MariaH17 小时前
git rebase的使用
前端
_柳青杨17 小时前
深入理解 JavaScript 事件循环
前端·javascript