从非 vue 文件访问 vue 3 应用程序实例 api

cap*_*ono 8 vue.js vuejs3 vue-composition-api

在 vue 2 中,您可以从 .js 文件访问 Vue 实例全局 api,如下所示:

Vue.prototype.$auth
Run Code Online (Sandbox Code Playgroud)

在 Vue 3 中,你有应用程序实例,据我所知,它现在只存在于 main.js 中

例如,如果我有 helper.js,我如何app.config.globalProperties.$auth从帮助文件中访问?

Bou*_*him 9

您可以定义一个插件:

// plugins/auth.js
export default {
  install: (app, options) => {
    app.config.globalProperties.$auth={}
  }
}
Run Code Online (Sandbox Code Playgroud)

然后使用它main.js

import authPlugin from './plugins/auth'

app.use(authPlugin)
Run Code Online (Sandbox Code Playgroud)

或者尝试app从 导出实例main.js并在您的文件中使用它helper.js

export app;
Run Code Online (Sandbox Code Playgroud)

helpers.js

import {app} from './main'
Run Code Online (Sandbox Code Playgroud)

或者,当您在任何组件内调用辅助函数时,您可以传递该全局变量。