Vue.js CASL Vue-如何在route guard中访问$can

Vue.js CASL Vue-如何在route guard中访问$can,vue.js,nuxt.js,casl,Vue.js,Nuxt.js,Casl,我正在构建一个Nuxt应用程序,并试图创建一个路由守卫。如何在Nuxt中间件中访问$can 导出默认值(上下文)=>{ 常量{route}=context 路由。匹配。某些((路由记录)=>{ const options=routeRecord.components.default.options console.log(选项) //我们应该在这里使用$can 返回真值 }) } 我将以下内容导入我的numxt.config.js: 插件:[ {src:'@plugins/vue can.js

我正在构建一个Nuxt应用程序,并试图创建一个路由守卫。如何在Nuxt中间件中访问
$can

导出默认值(上下文)=>{
常量{route}=context
路由。匹配。某些((路由记录)=>{
const options=routeRecord.components.default.options
console.log(选项)
//我们应该在这里使用$can
返回真值
})
}
我将以下内容导入我的
numxt.config.js

插件:[
{src:'@plugins/vue can.js'},
]
我在Nuxt$auth模块上添加
casl
作为插件:

auth:{
插件:[
“@plugins/vue casl.js”,
]
}
这是因为我需要访问插件中的
$auth.user

所有这些都很好,除了在我的Nuxt中间件中找不到
$abilities
$can



PS:我说的是这个包:

$abilities
$can
都应该作为中间件中
上下文
对象的属性提供,因此您应该能够使用
上下文访问它们。$foo

如果你看不到,可能是因为注射不当。您在
numxt.config.js
中注册的插件应使用
inject
$can
添加到全局vue实例中,并将其作为
上下文
的属性提供。有关更多详细信息,请参阅文档: