"getActivePinia()" was called but there was no active Pinia. Are you trying to use a store before calling "app.use(pinia)"?
使用pinia作为状态管理工具来写了一个vue组件,并发布至npm,然后在其他项目中安装使用时却出现了上述报错。
解决方法:
1、在发布的组件中使用pinia实例的地方均传入一个window.pinia
,如
const colorPickerState = colorPickerStore(window.pinia);
2、在其他项目(使用了该组件)中的main.js中,注册pinia后挂载一个全局的 pinia实例
app.use(store);
window.pinia = store;//添加该行,其中store是pinia实例
即可解决问题