首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >浏览器自动填充密码时,为什么我的 React 受控输入框会失去同步?

浏览器自动填充密码时,为什么我的 React 受控输入框会失去同步?

作者头像
超哥前端记录
发布于 2026-10-27 13:55:09
发布于 2026-10-27 13:55:09
1030
举报
概述
做登录表单时经常会遇到一个很隐蔽的 bug:用户使用浏览器保存的密码自动填充后,React 的受控输入框显示的是新密码,但组件里的 state 还是旧值,提交时拿到的是错误数据。这个问题在 Chrome 和 Safari 上都能复现,尤其是页面上有多个密码框或者用了自定义输入组件时更容易出现。根本原因在于浏览器自动填充并不总是触发 React 能监听的 input 事件,或者触发时机与 React

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档