fix(vue): tabs and parameterized routes work with latest vue #28846
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:
watch
inside 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?
watch
call 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.1bc0acb5
Note: 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.