为Pinia添加新的根基础定义



我已经在Quasar的启动文件中将axios添加到我的Pinia存储中

export default boot(async ({ app, store, ssrContext, router }) => {
const api = axios.create({
baseURL: import.meta.env.VITE_APP_API_BASE_URL,
paramsSerializer: serializeParameters,
});
store.use(() => ({ api }));
}
});

现在我想增加我的Pinia商店,以便能够在我的actions中使用this.api。我已经尝试使用文档中的所有示例

import 'pinia'
declare module 'pinia' {
export interface PiniaCustomProperties {
api: AxiosInstance;
}
}
export const useGroupStore = defineStore('groups', {
actions: {
getGroups() {
this.api <-- it is giving me undefined (or any)
}
}
})

如何扩展我的存储以便能够在操作中使用this.api

一个原因可能是useGroupStore()在某种程度上被调用在带有store.use(() => ({ api }));的代码之前。

请注意,以这种方式添加到存储中的任何内容都只能在之后创建的存储实例中使用。如果先出现useGroupStore(),则内部将看不到api

您可能想查看引导文件的顺序,并在这些方法中设置断点,以查看哪一个首先运行。

相关内容

  • 没有找到相关文章

最新更新