New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(compat): add Vue 3 support via @vue/compat, round 2 (fixes #5196) #6905
Commits on Oct 24, 2022
-
chore(compat): introduce Vue3 testing infrastructure
Add basic setup for running tests with vue3 compat
-
chore(compat): replace providing components with getter functions
Vue3 compat build fails so hard when you have a Vue component inside provide. To avoid this replace direct provides with combination of getter functions and computed
-
chore(compat): replace parent/root access with wrappers
Vue 3 compat does not allow to pass parent as parameter to new Vue instance, so we need to introduce a mixin to handle that. In future root mixin might be replaced with some tiny emitter like mitt
-
chore(compat): introduce vue3 compatibility wrapper
* fixes vModel issues * fixes rendering problems for functional components * expose new helpers: isVue3, nextTick
-
-
chore(compat): implement component access from vnode for vue3
Replace __vue__ with platform dependent access
-
-
chore(compat): delay first attempt to show image for nextTick
It seems Vue 2 and Vue 3 are not consistent about when lifecycle hooks are called. Unify this behavior
-
feature(vue3): replace transporter implementation with teleport
* Use built-in teleport in Vue3
-
chore(compat): disable tests related to has-listener in Vue 3
There is no way to answer, if we have listeners for even when using Vue3 compat build with $on available. Disable these tests for now, these could be enabled later, when INSTANCE_EVENT_EMITTER flag will be disabled
-
chore(compat): skip tbody-transition tests in Vue 3
* @vue/test-utils v2 does not allow stub transitions ATM
-
chore(compat): disable subset of config specs due to localVue
localVue implementation provided by vue-test-utils-compat is limited and does not allow us to cover all use cases
-
chore(compat): unify access to component instance from directive
Getting component instance from directive is different in Vue 2 and Vue 3. Introduce new util to solve this
-
chore(compat): make tabs properly filter in Vue 3
* correctly handle `null` inside children * fix test
-
-
chore: fix warnings about accessing undefined fields in render
* introduce "safe-vue-instance" helper
-
-
-
-
-
-
-
-
-
-
-
-
-
-