-
-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
Renders not batched consistently since 3.3.11 #10136
Comments
This is a difficult one - the fix in #7181 addresses an important issue, where watchers (pre by default) are firing for components that are unmounted in the same flush cycle. However, this does introduce a change in the way pre-watchers interact with component updates:
The post-change behavior is necessary for avoiding the "watcher firing for unmounted components" issue, because we can't know if the component is going to be unmounted until the parent has updated. Vuetify here is relying on the before-change behavior: So technically, the change in #7181 is a breaking change. The trade-off here is between:
IMO (2) is the more reasonable option here. |
Updated relevant docs section to provide more details for the current behavior: vuejs/docs@80e2128 Closing since there is a simple workaround for Vuetify. |
Vue version
3.3.11
Link to minimal reproduction
https://play.vuetifyjs.com/#eNqFkMEKgkAQhl9lmEsFqZhBIBp06QXqlh1MVxJcd9ld9yK+e7OuQQTRbX6+b4d/9jaiVlV0kjK0A8MUM8O47ErDjkUPkNmglHIe52DKhwYbcFGzLi+QYoELfXNIbdkNjGhM7NwqbbJoJj/FHYkXVom+/mcmZF6frfoSl6R9Zwq+dBZ9HENRV6qVBjQzg7+p5VIoAyMo1sAEjRIcVvQPK6cDUCNtwBXInbGON26n30LvcdpiEiZhHKMb9uEB7y92HWkI
Steps to reproduce
Click the second tab
What is expected?
There should be an animation on the tab underline.
What is actually happening?
No animation, the first tab re-renders before the second one gets the update event.
System Info
No response
Any additional comments?
vuetifyjs/vuetify#18892
https://github.com/vuetifyjs/vuetify/blob/fa5cccbdc9869eed397940574c3f6aaf144d7b31/packages/vuetify/src/components/VTabs/VTab.tsx#L60 expects that the DOM has not been updated yet
Bisected to #7181
The text was updated successfully, but these errors were encountered: