[Vue warn]: Property or method "length" is not defined on the instance but referenced during render
Tofandel opened this issue · comments
[Vue warn]: Property or method "length" is not defined on the instance but referenced during render. Make sure that this property is reactive, either in the data option, or for class-based components, by initializing the propert
y. See: https://v2.vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.
found in
---> <VSnackbars>
This issue happens only after upgrading vue from 2.7.4 to 2.7.5+ so this might be a vue issue, will investigate
I cannot find any change from 2.7.4 to 2.7.5 that would explain this, maybe it's just a bug that made the warning not show that got fixed, looking at the source I see this len
that is not accessed anywhere and changing it to length
fixes the issue, so it does mean that something somewhere is trying to access length
but I can't find it, the code is overly complex
After removing the message watchers (removing the content of the watcher doesn't, but removing it does) from the code the issue disappears, so it has to be a vue bug and the commit would be vuejs/vue@98fb01c
As after removing everything else, the issue is still there
I may have just discovered the most complex bug ever, it happens with vuex, vuex-orm, vue 2.7.5 only when mounting the same component twice
This is only happening in my test suite so I followed the rabbit hole for 3h and I'm still working on a minimal repro which I still can't get but I can get the bug super reliably and I've just been removing code after code and it's just still there
Oh OK… Then I'm not sure I can do anything, as it seems a Vue bug and not a v-snackbars
bug :-)