由于asyncData方法是在组件 初始化 前被调用的,所以在方法内是没有办法通过 this 来引用组件的实例对象。
在asyncData方法中无法使用this,但是业务需求在该方法中调用vuex实例。
虽然无法直接使用this来调用vuex实例,但是我们可以使用asyncData方法中的第一个参数:ctx(上下文对象)
,该参数包含了当前环境所有信息。通过ctx.store
就可以获取到vuex 实例。
比如:
async asyncData(ctx) {
console.log('username:'+ctx.store.state.user.userName)
}
结尾
我是圆圆,如果我的文章对你的学习成长有所帮助,欢迎 点 赞 👍 支持,您的 点 赞 👍 支持是我进行创作和分享的动力!
如果有问题可以留言评论或者私信我,我都会一一解答~笔芯🤞
参考: