开发者问题收集

Vue 外部的 Vue Composition API

2020-08-20
1822

因此,我开始使用 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 中完美地添加此通知,但我还想从系统的 vanilla JS 部分添加通知。我尝试使用 useNotification().add() ,但出现以下错误 [vue-composition-api] 必须在使用任何函数之前调用 Vue.use(plugin)。 基本上,它希望我在 Vue 中使用它。

关于如何实现它的任何想法?

1个回答

由于将 vue-composition-apivue2 结合使用存在缺陷,并且遵循 此处 的 SO 问题,我需要将以下内容添加到导出的 TS 文件的类型中

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

Vue.use(VueCompositionApi);
LeeR
2020-08-21