全局挂载的变量为undefined

在main.js中这样挂载全局变量,为什么在permission.js的路由守卫中使用this.$变量名,直接报错undefined

img

你在permission.js文件里面如果想要使用挂载在Vue对象上面的的sso对象,你应该在permission.js引入Vue对象,就像在main.js里面引入Vue一样,引入了以后,使用Vue.$sso来获取,而不是使用this.$老获取
还有一个就是你在main.js里面将sso挂载到Vue上面的时候是在请求成功以后挂载的,这是个异步操作,所以你需要保证的是,你在permission.js使用sso的时候,请求已经成功返回了,挂载到了Vue对象上了,不然也是获取不到的哦

在 app.vue或者mian.js里 挂载呢 。就像axios一样