我在我的nuxt项目中使用VueClipboard。
https://www.npmjs.com/package/vue-clipboard2
我有一个插件文件vue-clipboard.js
import Vue from "vue";
import VueClipboard from 'vue-clipboard2';
Vue.use(VueClipboard);
它被导入nuxt.config
plugins: ['@/plugins/vue-clipboard'],
这将设置一个全局变量$copyText和nuxt**,而不使用组合API**我可以执行类似以下操作
methods: {
async onCopyCodeToClipboard() {
const code = 'code'
await this.$copyText(code)
},
},
但是在使用组合API(@nuxtjs/composition-api)的设置中,当我编写函数时,我无法访问此.$copyText
const onCopyCodeToClipboard = async () => {
const code = context.slots.default()[0].elm.outerHTML
// -> Can't use this here - await this.$copyText(code)
}
那么,如何使$copyText
可在复合API中使用呢?
2条答案
按热度按时间vxbzzdmp1#
我可以通过Nuxt
useContext()
方法使其工作:ikfrs5lh2#
如果您使用的是nuxt桥,则应直接从useNuxtApp()导入useContext,如下所示:
https://nuxt.com/docs/bridge/bridge-composition-api#usecontext-and-withcontext