IDuxFE / idux

🚀 A UI Component Library for Vue3.x
https://idux.site
MIT License
552 stars 141 forks source link

[comp:modal] 弹窗配置destroyOnHide: true, 会导致回调里面的第2个弹窗的拖动不生效 #1436

Closed danranVm closed 1 year ago

danranVm commented 1 year ago

Reproduction link

https://playground.idux.site/#eyJQbGF5Z3JvdW5kQXBwLnZ1ZSI6Ijx0ZW1wbGF0ZT5cbiAgPEl4RHJhd2VyUHJvdmlkZXI+XG4gICAgPEl4Tm90aWZpY2F0aW9uUHJvdmlkZXI+XG4gICAgICA8SXhNb2RhbFByb3ZpZGVyPlxuICAgICAgICA8SXhNZXNzYWdlUHJvdmlkZXI+XG4gICAgICAgICAgPEFwcCAvPlxuICAgICAgICA8L0l4TWVzc2FnZVByb3ZpZGVyPlxuICAgICAgPC9JeE1vZGFsUHJvdmlkZXI+XG4gICAgPC9JeE5vdGlmaWNhdGlvblByb3ZpZGVyPlxuICA8L0l4RHJhd2VyUHJvdmlkZXI+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0IGxhbmc9XCJ0c1wiIHNldHVwPlxuaW1wb3J0IHsgc2V0dXBJZHV4IH0gZnJvbSAnLi9zZXR1cElkdXguanMnXG5pbXBvcnQgQXBwIGZyb20gJy4vQXBwLnZ1ZSdcbnNldHVwSWR1eCgpXG48L3NjcmlwdD5cbiIsIkFwcC52dWUiOiI8dGVtcGxhdGU+XG4gIDxJeFNwYWNlPlxuICAgIDxJeEJ1dHRvbiBAY2xpY2s9XCJvbk9wZW5cIj5PcGVuPC9JeEJ1dHRvbj5cbiAgPC9JeFNwYWNlPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdCBzZXR1cCBsYW5nPVwidHNcIj5cbmltcG9ydCB7IHVzZU1vZGFsIH0gZnJvbSAnQGlkdXgvY29tcG9uZW50cy9tb2RhbCdcblxuY29uc3QgeyBvcGVuLCBjb25maXJtLCBpbmZvLCBzdWNjZXNzLCB3YXJuaW5nLCBlcnJvciB9ID0gdXNlTW9kYWwoKVxuXG5jb25zdCBvbk9wZW4gPSAoKSA9PiBvcGVuKHsgaGVhZGVyOiAnMScsIGRyYWdnYWJsZTogdHJ1ZSwgZGVzdHJveU9uSGlkZTogdHJ1ZSwgY29udGVudDogJ1NvbWUgY29udGVudHMuLicsIG9uT2s6ICgpID0+IHtcbiAgb3Blbih7IGhlYWRlcjogJzInLCBkcmFnZ2FibGU6IHRydWUsIGNvbnRlbnQ6ICdTb21lIGNvbnRlbnRzLi4nfSlcbn0gfSlcbjwvc2NyaXB0PlxuIn0=

Steps to reproduce

弹窗配置:destroyOnHide: true 打开1弹窗点击确定,关闭1弹窗并打开2弹窗,2弹窗的拖动功能失效

What is expected?

拖动功能正常生效

What is actually happening?

Environment Info

Any additional comments? (optional)

idux-bot[bot] commented 1 year ago

Translation of this issue:

[Comp: MODAL] The pop -up window configuration Destroyonhide: TRUE will cause the second pop -up window to drag in the call back.

REPRODUCTION LINK

STEPS To Reproduce

Popping window configuration: Destroyonhide: true: true Open 1 pop -up window, click OK, close 1 pop -up window and open 2 pop -ups, 2 pop -up window drag function fails

What is exfected?

The drag function takes effect normally

What is actually happy?

ENVIRONMENT Info

ANY Additional Comments? (Optional)

kovsu commented 1 year ago

https://playground.idux.site/#eyJQbGF5Z3JvdW5kQXBwLnZ1ZSI6Ijx0ZW1wbGF0ZT5cbiAgPEl4RHJhd2VyUHJvdmlkZXI+XG4gICAgPEl4Tm90aWZpY2F0aW9uUHJvdmlkZXI+XG4gICAgICA8SXhNb2RhbFByb3ZpZGVyPlxuICAgICAgICA8SXhNZXNzYWdlUHJvdmlkZXI+XG4gICAgICAgICAgPEFwcCAvPlxuICAgICAgICA8L0l4TWVzc2FnZVByb3ZpZGVyPlxuICAgICAgPC9JeE1vZGFsUHJvdmlkZXI+XG4gICAgPC9JeE5vdGlmaWNhdGlvblByb3ZpZGVyPlxuICA8L0l4RHJhd2VyUHJvdmlkZXI+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0IGxhbmc9XCJ0c1wiIHNldHVwPlxuaW1wb3J0IHsgc2V0dXBJZHV4IH0gZnJvbSAnLi9zZXR1cElkdXguanMnXG5pbXBvcnQgQXBwIGZyb20gJy4vQXBwLnZ1ZSdcbnNldHVwSWR1eCgpXG48L3NjcmlwdD5cbiIsIkFwcC52dWUiOiI8dGVtcGxhdGU+XG4gIDxJeEJ1dHRvbiBtb2RlPVwicHJpbWFyeVwiIEBjbGljaz1cInZpc2libGUgPSAhdmlzaWJsZVwiPk9wZW4gbW9kYWw8L0l4QnV0dG9uPlxuICA8SXhNb2RhbCB2LW1vZGVsOnZpc2libGU9XCJ2aXNpYmxlXCIgZHJhZ2dhYmxlIGhlYWRlcj1cIlRoaXMgaXMgaGVhZGVyXCI+XG4gICAgPHA+U29tZSBjb250ZW50cy4uLjwvcD5cbiAgICA8cD5Tb21lIGNvbnRlbnRzLi4uPC9wPlxuICAgIDxwPlNvbWUgY29udGVudHMuLi48L3A+XG4gIDwvSXhNb2RhbD5cbiAgPEl4U3BhY2U+XG4gICAgPEl4QnV0dG9uIEBjbGljaz1cIm9uT3BlblwiPk9wZW48L0l4QnV0dG9uPlxuICA8L0l4U3BhY2U+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0IHNldHVwIGxhbmc9XCJ0c1wiPlxuaW1wb3J0IHsgcmVmIH0gZnJvbSAndnVlJ1xuaW1wb3J0IHsgdXNlTW9kYWwgfSBmcm9tICdAaWR1eC9jb21wb25lbnRzL21vZGFsJ1xuXG5jb25zdCB2aXNpYmxlID0gcmVmKGZhbHNlKVxuXG5jb25zdCB7IG9wZW4sIGNvbmZpcm0sIGluZm8sIHN1Y2Nlc3MsIHdhcm5pbmcsIGVycm9yIH0gPSB1c2VNb2RhbCgpXG5cbmNvbnN0IG9uT3BlbiA9ICgpID0+IG9wZW4oeyBoZWFkZXI6ICcxJywgZHJhZ2dhYmxlOiB0cnVlLCBkZXN0cm95T25IaWRlOiB0cnVlLCBjb250ZW50OiAnU29tZSBjb250ZW50cy4uJywgb25PazogKCkgPT4ge1xuICBvcGVuKHsgaGVhZGVyOiAnMicsIGRyYWdnYWJsZTogdHJ1ZSwgZGVzdHJveU9uSGlkZTogdHJ1ZSwgY29udGVudDogJ1NvbWUgY29udGVudHMuLid9KVxufSB9KVxuPC9zY3JpcHQ+XG4ifQ==

首先点击 Open,发现第二个弹窗是不能拖动的,和 issue 的情况一样。然后刷新浏览器,点击 OpenModal,再去点击 Open,发现这时候原先不能拖动的第二个弹窗能被拖动了。

然后刷新浏览器,给 template 里的 IxModal 加上一个 destroyOnHide,重复上面的步骤发现第二个弹窗又不能被拖动了。