From b15422c3f328adb14fd3ff3a8daa0441ce5eeccd Mon Sep 17 00:00:00 2001 From: CoderMageFox Date: Mon, 10 Nov 2025 23:08:52 +0800 Subject: [PATCH] fix(auth): align PasswordChecklist special chars with validation logic (#860) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复密码验证UI组件与验证逻辑之间的特殊字符不一致问题。 问题描述: - PasswordChecklist组件默认接受所有特殊字符(如^_-~等) - 实际验证函数isStrongPassword()仅接受@#$%!&*?共8个特殊字符 - 导致用户输入包含其他特殊字符时,UI显示绿色勾选但注册按钮仍禁用 修改内容: - 在RegisterPage.tsx的PasswordChecklist组件添加specialCharsRegex属性 - 限制特殊字符为/[@#$%!&*?]/,与isStrongPassword()保持一致 影响范围: - 仅影响注册页面的密码验证UI显示 - 不影响后端验证逻辑 - 提升用户体验,避免误导性的UI反馈 Closes #859 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: tinkle-community --- web/src/components/RegisterPage.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/web/src/components/RegisterPage.tsx b/web/src/components/RegisterPage.tsx index 010fa081..4c1b6275 100644 --- a/web/src/components/RegisterPage.tsx +++ b/web/src/components/RegisterPage.tsx @@ -244,6 +244,7 @@ export function RegisterPage() { 'match', ]} minLength={8} + specialCharsRegex={/[@#$%!&*?]/} value={password} valueAgain={confirmPassword} messages={{