Subscribe on changes!

[Bug Report][3.4.20] Uncaught (in promise) TypeError: Cannot read properties of null (reading 'da')

avatar
Feb 26th 2024

Vue version

3.4.20

Link to minimal reproduction

https://stackblitz.com/edit/nuxt-starter-14ccdj

Steps to reproduce

Navigate back and forth

What is expected?

No errors

What is actually happening?

Error that breaks the application and blocks navigation.

System Info

No response

Any additional comments?

This is an attempt to reproduce this error: TypeError: Cannot read properties of null (reading 'suspenseId')

I have been getting this in my production Nuxt application after upgrading from 3.4.8 to 3.4.20. Unfortunately I could not reproduce the exact error, but this seems to have a similar root cause (component is undefined when we try to access one of its properties. I can also confirm that both of these errors go away when downgrading to 3.4.8.

This also only appears when you have keepalive enabled.

avatar
Feb 27th 2024

This is an attempt to reproduce this error: TypeError: Cannot read properties of null (reading 'suspenseId')

I think this error has been fixed via #10184 will be fixed by #10417

Uncaught (in promise) TypeError: Cannot read properties of null (reading 'da')

This is because the KeepAlive cached vnode is not mounted. so there is nothing to do with KeepAlive.

This also only appears when you have keepalive enabled.

Without KeepAlive also has the problem see simple reproduction of current issue

avatar
Feb 27th 2024

This is an attempt to reproduce this error: TypeError: Cannot read properties of null (reading 'suspenseId')

I think this error has been fixed via #10184

I do not believe so, as my application breaks with this error once updating from 3.4.8 to 3.4.20. Unfortunately I couldn't find an exact reproduction but I think it is somewhat related to using the dynamic route name param in a computed variable that is used in other components, since deleting that specifically causes the error to go away.

avatar
Feb 27th 2024

https://github.com/vuejs/core/blob/89de26cdcdddef8096417ea494de113399629d5b/packages/runtime-core/src/components/Suspense.ts#L375-L377

Here is where the error happens to give some context. This if statement gets triggered while newBranch.component is null

avatar
Feb 27th 2024

Fortunately I can confirm that adding the changes done in #10417 fixes the TypeError: Cannot read properties of null (reading 'suspenseId') in my application as well!