Just set up a fresh installation of Vue 3 using vue-cli and typescript. Everything seems to be running smoothly, but as soon as I incorporate the https://vue-select.org/ package, I encounter this error in the browser console:
Uncaught (in promise) TypeError: this.$on is not a function
at Proxy.created (vue-select.js?4a7a:1)
at callWithErrorHandling (runtime-core.esm-bundler.js?5c40:155)
at callWithAsyncErrorHandling (runtime-core.esm-bundler.js?5c40:164)
at callHook (runtime-core.esm-bundler.js?5c40:3182)
at applyOptions (runtime-core.esm-bundler.js?5c40:3109)
at finishComponentSetup (runtime-core.esm-bundler.js?5c40:7265)
at setupStatefulComponent (runtime-core.esm-bundler.js?5c40:7190)
at setupComponent (runtime-core.esm-bundler.js?5c40:7117)
at mountComponent (runtime-core.esm-bundler.js?5c40:5115)
at processComponent (runtime-core.esm-bundler.js?5c40:5090)
Here's a simple example:
Home.vue
<template>
<div class="home">
<img alt="Vue logo" src="../assets/logo.png">
<vSelect :options="[{label: 'Canada', code: 'ca'}]"></vSelect>
</div>
</template>
<script lang="ts">
import { Options, Vue } from 'vue-class-component';
import HelloWorld from '@/components/HelloWorld.vue'; // @ is an alias to /src
import vSelect from 'vue-select';
@Options({
components: {
HelloWorld,
vSelect
},
})
export default class Home extends Vue {}
</script>