Element UI version
2.15.13
OS/Browsers version
Window 10 / Chorme 114
Vue version
2.6.14
Reproduction Link
https://codepen.io/erlangera/pen/abQVMjW
Steps to reproduce
1.使用hex颜色格式时传入值后三位包含非法值
2.弹出的选色器面板无法通过点击取值
3.调整右侧栏位或者点击底部输入框可恢复正常
备注:直接在底部输入框输入步骤1中非法值并点击确定也可触发bug
What is Expected?
弹出的选色器可以正常取色
What is actually happening?
弹出的选色器点击取色后底部输入框无反应为空白,无法取色
1条答案
按热度按时间zysjyyx41#
原因为 #20710 中引入了新的hex格式的颜色校验,该校验正则存在问题导致非法格式通过校验。
/^(?:[0-9a-fA-F]{3}){1,2}|[0-9a-fA-F]{8}$/
因优先级原因实际为/(^(?:[0-9a-fA-F]{3}){1,2})|([0-9a-fA-F]{8}$)/
与实际要求不符合。应修改为
/^((?:[0-9a-fA-F]{3}){1,2}|[0-9a-fA-F]{8})$/
。