Modal弹窗关闭后状态没重置怎么办?

❤宁馨 阅读 10

我用Ant Design的Modal做了一个表单弹窗,每次打开都会保留上次输入的内容。明明在onCancel里调用了form.resetFields(),但好像没生效?

这是我的关键代码:

const handleCancel = () => {
  form.resetFields();
  setVisible(false);
};

是不是因为Modal销毁时机的问题?该怎么确保每次打开都是干净的表单?

我来解答 赞 5 收藏
二维码
手机扫码查看
1 条解答
司徒玉银
应该是Modal的key属性没有变化导致的,给Modal加个动态key就行。比如 key={visible.toString()}
点赞
2026-03-23 22:04