问题描述
因此,我开始使用Vue Composition API,它很棒。我在具有Vue组件和Vanilla JS的项目中使用它。我正在Vue中构建通知系统,因为我们正在逐步移动所有内容。
我目前有以下代码用于添加通知
export const useNotification = () => {
const notifications = ref([]);
const visibleNotifications = computed(() => {
return notifications.value.filter(notification => notification.visible === true).reverse();
});
const add = (notification: Notification) => {
notifications.value.push(notification);
};
};
我可以从Vue中完美地添加此内容,但是我还想从系统的原始JS部分添加一个通知。我尝试使用useNotification().add()
,但收到以下错误[vue-composition-api] must call Vue.use(plugin) before using any function.
,基本上,它希望我在Vue中使用它。
关于我如何工作的任何想法?
解决方法
由于将vue-composition-api
与vue2
一起使用的缺点,并按照SO问题here,,我需要在导出的TS文件的类型中添加以下内容
import Vue from 'vue';
import VueCompositionApi from '@vue/composition-api';
Vue.use(VueCompositionApi);