Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

modal 关闭后之前填写的值还存在 #4165

Closed
wm3445 opened this issue Dec 7, 2016 · 10 comments
Closed

modal 关闭后之前填写的值还存在 #4165

wm3445 opened this issue Dec 7, 2016 · 10 comments

Comments

@wm3445
Copy link

wm3445 commented Dec 7, 2016

modal 关闭后之前填写的值还存在,这种问题怎么解决啊,
这是我目前的解决方案
ModalGen = () => <MyModal {...props} />;
但是现在出现的问题是配合属性confirmLoading使用 他会先清空内容,请问有没有关闭就销毁的方法啊。

@yesmeck
Copy link
Member

yesmeck commented Dec 7, 2016

#3729

@afc163
Copy link
Member

afc163 commented Dec 7, 2016

尝试给 Modal 一个 key,打开时换一个。

<Modal key={xxx}></Modal>

或者打开 Modal 时自行重置数据。

@yesmeck yesmeck closed this as completed Dec 8, 2016
@imperio-wxm
Copy link

imperio-wxm commented Feb 10, 2017

@afc163 Hi,如果在点击Modal后,会有一个websocket长连接打开,在用

<Modal key={xxx}></Modal>

重新打开时会出现全新的Modal,那以前的Modal会自动卸载吗?长连接是否会自动断开?

@benjycui
Copy link
Contributor

@imperio-wxm 这属于 React 生命周期的问题,建议看下相关文档。

@zhulinpinyu
Copy link

现在的方案还是

<Modal key={xxx}></Modal>

@benjycui
Copy link
Contributor

其实我觉得,在 Modal 关闭事件里调用 Form 的 resetFields 会更好。

@zjh65204
Copy link

zjh65204 commented Jun 9, 2017

我是这么处理的,有时候需要条件表单:例如根据男、女生成不同的表单内容。
我用resetFields 重置表单,然后再把管理表单的变量也置为初始值

@hollyoops
Copy link

hollyoops commented Feb 7, 2018

我给两个方案:

  1. 使用model的 afterClose
<Modal afterClose={() => this.props.form.resetFields(); >
...
</Modal>
  1. 使用 destroyOnClose
<Modal destroyOnClose={true} >
...
</Modal>

@youngjuning
Copy link

我给两个方案:

  1. 使用model的 afterClose
<Modal afterClose={() => this.props.form.resetFields(); >
...
</Modal>
  1. 使用 destroyOnClose
<Modal destroyOnClose={true} >
...
</Modal>

我觉得 Model 里边有 Form,统一写 destoryOnClose 应该是规范

@souldjl
Copy link

souldjl commented Jul 15, 2020

我给两个方案:

  1. 使用model的 afterClose
<Modal afterClose={() => this.props.form.resetFields(); >
...
</Modal>
  1. 使用 destroyOnClose
<Modal destroyOnClose={true} >
...
</Modal>

我觉得 Model 里边有 Form,统一写 destoryOnClose 应该是规范

但是实际情况并没有destory

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

11 participants