fix: dynamically update deep scopedSlot refs #899
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
#764 works perfectly when you're using normal slots, but not if you forward scoped slots to a child component.
Unfortunately, and I hope I'm mistaken about this, every component's entire VNode tree has to be iterated to find a component that needs refs updated.
Here's some perf testing of this PR in our application. In the Firefox profiler,
afterRender
shows up for:Ideally this would use Vue's patch hooks like native Vue 2 refs do. Would it be out of the question to introduce a faster
v-ref=
instead of this PR? Or is this fast enough given that the readme already warns about performance issues?