Vuejs2 如何在nuxt js中从asyncData中的组件调用plugin方法

Vuejs2 如何在nuxt js中从asyncData中的组件调用plugin方法,vuejs2,nuxt.js,Vuejs2,Nuxt.js,组件:pages/user/_username.vue 导出默认值{ 异步数据({context,route,$twitter}){ const userProfile=wait$twitter .getUserProfile(route.params.username) .然后((userProfile)=>userProfile.data) 返回{userProfile} }, } plugin/twitter.server.js async getUserProfile(用户名){ co

组件:pages/user/_username.vue

导出默认值{
异步数据({context,route,$twitter}){
const userProfile=wait$twitter
.getUserProfile(route.params.username)
.然后((userProfile)=>userProfile.data)
返回{userProfile}
},
}
plugin/twitter.server.js

async getUserProfile(用户名){
const userProfiles=等待axios
.得到(
`https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=${username}&count=100&tweet\u mode=extended`,
{
标题:{
授权:'承载'+(等待此.fetchAccessToken()),
},
}
)
。然后((res)=>{
返回res
})
.catch((错误)=>{
if(error.response.status==401){
this.cache.set('accessToken',this.fetchAccessToken())
返回此参数。getSampleStatuses()
}
})
返回用户配置文件
}
此代码仅用于服务器端渲染。我想调用客户端或服务器端渲染。如何在客户端调用

您可以通过根Vue应用程序实例访问$twitter(假设您已将其设置为插件)。您可以通过已包含在asyncData调用中的上下文访问根Vue应用程序实例

只要改变一下:

const userProfile = await $twitter
致:


任何人请帮助我…当我在我们的项目中添加您的代码时,此讨论可能会回答您的问题,然后显示消息无法读取未定义的属性“app”我不知道我的问题到底是什么您可能遗漏了此消息?这是错误消息
无法读取未定义的属性“app”
我的代码在服务器端正常工作但问题仅限于客户端@nick dawes
const userProfile = await context.app.$twitter