fix(vue): tabs and parameterized routes work with latest vue - #28846
Merged
Conversation
liamdebeasi
marked this pull request as ready for review
January 18, 2024 19:09
thetaPC
approved these changes
Jan 19, 2024
thetaPC
left a comment
Contributor
There was a problem hiding this comment.
LGTM, verified that it fixes the issue.
This was referenced Jan 19, 2024
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Issue number: resolves #28774
What is the current behavior?
There are two issues causing Ionic Vue apps to not behave as intended with certain versions of Vue:
watchinside of IonRouterOutlet to be a shallow watcher instead of a deep watcher. This caused the router outlet to not consistent re-render. While the change was later reverted by the Vue team, they expressed that the change may re-land in a future minor release. As a result, we will need to account for this inside of Ionic.What is the new behavior?
watchcall now is now explicitly a deep watcher. This change is backwards compatible as well as forward compatible with upcoming Vue changes.I plan to add renovatebot to these E2E test apps, but I will handle that in a separate PR.
Does this introduce a breaking change?
Other information
Dev build:
7.6.6-dev.11705526292.1bc0acb5Note: Both of the issues cause tests to fail when using the latest dependencies in the Vue E2E test app. However, I need to use the latest dependencies so I can demonstrate that my changes do fix the reported issues. As a result, I have both fixes in the same PR.