Open
Description
Describe the bug
With shallowMount
on Vue 3 + @vue/compat, properties of a child component are undefined when using them through a mixin.
If the property is moved from the mixin directly to the component, then the property is defined.
Also if the shallowMount
is switched to mount
, the property is defined.
To Reproduce
I created a demo repo where this issue can be reproduced, with tags for various working and not working states. It includes the following important files:
- Parent Component: App.vue
- Child Component: HelloWorld.vue
- Mixin: HelloWorldMixin.js
- Test: App.test.js
git clone https://github.com/cody-collins/vue-compat-mixin-demo.git
cd vue-compat-mixin-demo
npm install
npm test
And the following tags:
- Working: Vue 2 + VTU 1
- Broken: Vue 3 + VTU 2
- Working: Vue 3 + VTU 2 +
mount
instead ofshallowMount
- Working: Vue 3 + VTU 2 + props moved to component
Expected behavior
The second assertion should pass in the broken case