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报错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
electron-vue利用webpack打包实现多页面的入口文件问题
项目需要在electron的项目中新打开一个窗口,利用webpack作为静态资源打包器,发现在webpack中可以设置多页面的入口,今天来讲一下我在electron中利用webpack建立多页面入口的踩坑经验,需要的朋友可以参考下2019-05-05
如何使用electron将vue项目打包成.exe文件(保姆级教程)
本文给大家介绍如何使用electron将vue项目打包成.exe文件,大家要注意一下vue2项目,使用的vue-element-admin框架,用electron打包成.exe文件,本文结合实例代码给大家介绍的非常详细,需要的朋友参考下吧2024-03-03


最新评论