You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Because of that the component's render effect is not tracking all reactive values properly.
I'm coming from vuejs/pinia#2565 but it's still not clear for me how to properly configure aliases and I think it would be beneficial for the whole ecosystem to have this documented somewhere.
The text was updated successfully, but these errors were encountered:
FAIL repro.spec.js > maintains reactivity
TypeError: ref is not a function
❯ repro.spec.js:8:15
6| test('maintains reactivity', async () => {
7| const vRef = vueRef(0);
8| const dRef = demiRef(0);
| ^
9|
10| const Comp = defineComponent({
When I stop there in debugger I can see that the vue-demi import is not quite like it should:
I'd expect __vite_ssr_import_3__.ref to evaluate to the same value as __vite_ssr_import_2__.ref. At this point I'm out of ideas and would appreciate any pointers
Reproduction
https://github.com/bgoscinski/repro-vue-compat-reactivity
Steps to reproduce the bug
npm install
npm test
. Test fails'vue': '@vue/compat'
alias from./vite.config.js
npm test
again. Test passes 🤯Expected behavior
Reactivity is preserved when using
vue-demi
with@vue/compat
Actual behavior
No/broken reactivity
Additional information
I think that vue-demi doesn't use the reactivity primitives from @vue/compat so we end up with both of these loaded at the same time:
node_modules/@vue/compat/dist/vue.cjs.js
node_modules/@vue/reactivity/dist/reactivity.cjs.js
Because of that the component's render effect is not tracking all reactive values properly.
I'm coming from vuejs/pinia#2565 but it's still not clear for me how to properly configure aliases and I think it would be beneficial for the whole ecosystem to have this documented somewhere.
The text was updated successfully, but these errors were encountered: