watch callback is run twice when calling `createApp` in the callback
Vue version
3.2.38
Link to minimal reproduction
Steps to reproduce
- Open the demo@vue3.2.38
- After clicking it, two nodes will appear
What is expected?
- open the demo@vue3.2.37
- After clicking it, one node will appear
What is actually happening?
Two nodes will appear!!!
System Info
No response
Any additional comments?
No response
@LinusBorg Both Vant's Toast component and Arco-Design's Message component are implemented using Vue.render. Here is the core code. demo
Duplicate of #6609
I'll keep this issue open and keep #6609 closed because this issue here as a minimal reproduction out of the gate and focusses on the actual issue.
@yyx990803 I can still reproduce the issue on a deployed app (Vue 3.2.39 in production mode) but it's very difficult to create a reproduction as it seems to be random. I guess there is a timing or race condition at play...
Here is a screenshot of requests failing becase watchers are being executed while unmounting components after changing route:
I will continue to investigate and try to narrow the issue down.