ng-zorro-table列宽resize后宽度是NaN的源码调试记录

前言

就是公司提了个bug,表格resize列宽后,得到的 width 是 NaN,调试了一下 ng-zorro 的源代码,发现了问题所在,于是记录一下这个坑

现象

公司的表格数据是 Input 到组件里面的,然后每一项的 widht 是个字符串

然后在使用时,列的 minWidth 和 maxWidth 都是默认取的 width,依旧是字符串,然后 th 是使用了 ng-zorro 里的自定义指令 nz-resizable

然后在 resize 列宽时,会触发 nz-resizable 的逻辑,逻辑内部会通过 Math.min 和 Math.max 去取值。然而此时的值是字符串130px,就会导致 newWidth 的值是 NaN

解决办法

定义一个转换方法,只取数值部分传入即可

ts 复制代码
parseInt(column.maxWidth || column.width, 10);

这样得到的 newWidth 就是 number 了

相关推荐
用户2788607285673 分钟前
别把 AI 查询结果只塞进聊天框:SessionView 与业务页面接线
前端
程序员鱼皮4 分钟前
Personal Agent 是什么?为什么大厂都抢着做?连 DeepSeek Bot 都来了。。
前端·后端·ai编程
m0_5873830012 分钟前
碰碰好评卡功能落地全流程实战指南 附核心逻辑与常见问题解决方案
java·前端·数据库·后端·struts·需求分析
子轩学长说13 分钟前
Workbuddy独立文件浏览器新上线,彻底告别WPS和office全家桶~
前端
nyaomaru14 分钟前
如何用 Jev 从 PR 中提取 “Why” 并写入 CHANGELOG?🤔
前端·typescript
Shirley~~14 分钟前
从0搭建一个3D立体场景:光影与交互全解析
前端·3d
Dovis(誓平步青云)15 分钟前
一年1956亿行:智能电表场景下的时序数据存储实践
运维·前端·自动化·音视频·prometheus
兰亭妙微UI设计公司15 分钟前
兰亭妙微分享:高手设计登录页的12种切入点
开发语言·前端·javascript
前端Baymax19 分钟前
静默的 86 小时:全链 402 停摆与零告警的故障复盘
开发语言·前端·javascript
要开心吖ZSH21 分钟前
定时任务从外部调度搬回本地 @Scheduled:一次连接池被打满的复盘与选型思考
前端·firefox