Closed as not planned
Description
Vue version
3.4.31
Link to minimal reproduction
https://github.com/riz007/vuetify-3-6-13-issue
Steps to reproduce
-
Set Up the Project
Ensure your Vue 3 project is set up with Vuetify, Axios, and configured correctly with the provided
Parent.vue
,Child.vue
,App.vue
, andvite.config.js
files. -
Add Routing
Set up Vue Router to navigate to the
Parent
component. Ensure you can navigate to theParent
component usingrouter.push('/parent')
. -
Navigate to Parent Page
Use Vue Router to navigate to the
Parent
component by callingrouter.push('/parent')
. -
Observe Loading State
- When navigating to the
Parent
component, theisLoading
state in theParent
component should be initially set totrue
. - The
Child
component should display a loading spinner (v-progress-circular
) whileisLoading
istrue
.
- When navigating to the
-
Perform Data Fetch
- The
Parent
component should make an HTTP request to fetch data using Axios when mounted. - After the data is successfully fetched,
isLoading
should be set tofalse
.
- The
-
Check Data Display
- Once
isLoading
isfalse
, theChild
component should update to show the fetched data and display the message "Data loaded properly".
- Once
What is expected?
- Navigation: When navigating to the
Parent
component usingrouter.push
, theChild
component should display a loading spinner while data is being fetched. - Loading State: The loading spinner should be visible while
isLoading
istrue
. - Data Display: After the data is fetched,
isLoading
should be set tofalse
, and theChild
component should display the fetched data along with the message "Data loaded properly".
What is actually happening?
- Navigation Issue: The
Child
component does not update the loading spinner correctly when navigating to theParent
component usingrouter.push
. - Loading State: The loading spinner may not be displayed as expected when navigating to the
Parent
component. - Data Display: The
Child
component might not show the fetched data correctly afterisLoading
is set tofalse
, especially if the issue persists withrouter.push
.
System Info
**Vuetify Version:** 3.6.13
**Vue Version:** 3.4.31
**Browsers:** Chrome 126.0.0.0
**OS:** Mac OS 10.15.7
Any additional comments?
- This behavior appeared only after bumping to Vuetify's latest version. Could be related to Vue 3's reactivity system but I am not sure.
- Wrapping the child component in a
<div>
should not be necessary for reactivity to work correctly. - Further investigation is required to understand the root cause.
Feedback from Vuetify team
I have previously raised this issue to the Vuetify core team and @KaelWD replied me this:
- It's a vue bug, you can reproduce this without vuetify by making the root of App.vue a
<Suspense>
Metadata
Metadata
Assignees
Labels
No labels