Uncaught Error: [vue-composition-api] must call Vue.use(plugin) before using any function

此问题已由Vue上的一位朋友修复。js论坛。对于其他遇到这个问题的人,我将在这里发布他的答案。简而言之,您需要创建一个单独的文件来安装composition API插件,并在路由器/索引中调用该文件。js文件来实例化插件。

这是因为合成API不在Vue内部。随着Vue 3的发布,这一问题将得到解决。

你需要Vue。在尝试使用属于@vue/CompositionApi的任何内容之前,请使用(CompositionApi)。

在你的main.js或index.js,应用程序入口点,先安装它:

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

Vue.use(VueCompositionApi)

这是可行的。但我假设你的文件看起来不像这样,它看起来更像下一个:

import Vue from 'vue'
import VueCompositionApi from '@vue/composition-api'
import { isAuthenticated } from '@/store/auth'

Vue.use(VueCompositionApi)

这将再次破坏一切,因为安装组合API的行(Vue.use(VueCompositionApi))位于从“@/store/auth”导入使用它的内容(导入{unauthenticated})的行之后
同时,在Vue 3.0发布之前,您可以创建一个文件,只需安装插件即可:

新建installCompositionApi.js

// installCompositionApi.js

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

Vue.use(VueCompositionApi)

然后在main.js中引入:

// main.js
import './installCompositionApi.js'
import Vue from 'vue'
import { isAuthenticated } from '@/store/auth'

if (isAuthenticated.value) {
// ...
} else {
// ...
}

版权声明:本文为weixin_43278947原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。