Vue外部的Vue Composition API

问题描述

因此,我开始使用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-apivue2一起使用的缺点,并按照SO问题here,,我需要在导出的TS文件的类型中添加以下内容

import Vue               from 'vue';
import VueCompositionApi from '@vue/composition-api';

Vue.use(VueCompositionApi);

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...