Vue3在router中使用pinia报错的简单解决办法
报错会报两个一个是xxxStore WEBPACK_IMPORTED_MODULE_1__.default) is not a function还有一个是getActivePinia was called with no active Pinia
因为接到了要在路由守卫中增加判断的需求,需要用到store中的数据,于是在router里面import了store,beforeEach里use了,然后启动就报异常,去官网翻文档。
(https://pinia.web3doc.top/core-concepts/outside-component-usage.html)

大概的意思是要在初始化了pinia之后调用才行,得把useStore的逻辑写到方法里,照着操作一遍发现还是xxxStore WEBPACK_IMPORTED_MODULE_1__.default) is not a function。于是乎检查所有Store,发现有些Store中代码是这样的

知晓一二了,一个Store引入另外一个Store,const userStore = useUserStore();的位置应该放在具体方法里面不能放到上面,否则也会像Router那样在pinia初始化之前就被调用从而报xxx is not a function的错误
解决方案:检查所有Store包括js,把这种在方法外部useStore的地方都改到具体使用的方法里去
再试试,就一切正常了
总结
到此这篇关于Vue3在router中使用pinia报错解决的文章就介绍到这了,更多相关Vue3 router使用pinia报错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
关于iview和elementUI组件样式覆盖无效问题及解决
这篇文章主要介绍了关于iview和elementUI组件样式覆盖无效问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-09-09
vue-element-admin 全局loading加载等待
本文主要介绍了vue-element-admin 全局loading加载等待,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2021-09-09


最新评论