java小菜机一枚 2023-10-16 09:30 采纳率: 91.3%
浏览 236
已结题

"getActivePinia()" was called but there was no active Pinia

"getActivePinia()" was called but there was no active Pinia. Are you trying to use a store before calling "app.use(pinia)"?

我的代码是这样的,为什么会报这个错误?

import {defineStore} from "pinia";
import {computed, ComputedRef, ref} from 'vue';

export const requestStore = defineStore('request',() => {
    const location : Location = window.location;
    // @ts-ignore
    const baseUrl : string = ref(`${location.protocol}//${location.hostname}:5173`);
    // @ts-ignore
    const timeout : number = ref(5000);
    // @ts-ignore
    const getBaseUrl : ComputedRef<string> = computed(() : string => baseUrl.value);
    // @ts-ignore
    const getTimeout : ComputedRef<number> = computed(() : number => timeout.value);
    return {getBaseUrl,getTimeout};
});
import axios, {AxiosInstance, AxiosRequestConfig, AxiosResponse} from 'axios';
import {isNotEmptyNumber, isNotEmptyObject} from "../utils/tool.ts";
// @ts-ignore
import { show } from '../utils/message.ts';
import { requestStore } from '../stores/request.ts'

let request : AxiosInstance = axios.create({
    // @ts-ignore
    baseURL: requestStore().getBaseUrl.value,
    // @ts-ignore
    timeout: requestStore().getTimeout.value,
    headers: {
        'Content-type': 'application/json;charset=utf-8'
    }
});

// @ts-ignore
request.interceptors.request.use((config : AxiosRequestConfig) => {
    return config;
},(error : any) => {
    return Promise.reject(error);
});

request.interceptors.response.use((response : AxiosResponse) => {
    return response.data;
},(error : any) => {
    if (isNotEmptyObject(error.response)) {
        let response : AxiosResponse = error.response.data;
        // @ts-ignore
        let path : string = window.location.pathname;
        // @ts-ignore
        let code : number = response.code;
        // @ts-ignore
        let message : string = response.message;
        if (!isNotEmptyNumber(code)) {
            code = error.response.status;
        }
        if (code === 404) {
            if (path.indexOf('/admin') !== -1) {
                window.location.href = '/admin/404';
            } else {
                window.location.href = '/404';
            }
        } else if (code === 500) {
            show('error','服务端产生异常,请稍后重试!');
        } else {
            show('error',message);
        }
    } else {
        show('error','网络异常,请稍后重试!');
    }
    return Promise.reject(error);
});

export default request;
import axios, {AxiosInstance, AxiosRequestConfig, AxiosResponse} from 'axios';
import {isNotEmptyNumber, isNotEmptyObject} from "../utils/tool.ts";
// @ts-ignore
import { show } from '../utils/message.ts';
import { requestStore } from '../stores/request.ts'

let request : AxiosInstance = axios.create({
    // @ts-ignore
    baseURL: requestStore().getBaseUrl.value,
    // @ts-ignore
    timeout: requestStore().getTimeout.value,
    headers: {
        'Content-type': 'application/json;charset=utf-8'
    }
});

// @ts-ignore
request.interceptors.request.use((config : AxiosRequestConfig) => {
    return config;
},(error : any) => {
    return Promise.reject(error);
});

request.interceptors.response.use((response : AxiosResponse) => {
    return response.data;
},(error : any) => {
    if (isNotEmptyObject(error.response)) {
        let response : AxiosResponse = error.response.data;
        // @ts-ignore
        let path : string = window.location.pathname;
        // @ts-ignore
        let code : number = response.code;
        // @ts-ignore
        let message : string = response.message;
        if (!isNotEmptyNumber(code)) {
            code = error.response.status;
        }
        if (code === 404) {
            if (path.indexOf('/admin') !== -1) {
                window.location.href = '/admin/404';
            } else {
                window.location.href = '/404';
            }
        } else if (code === 500) {
            show('error','服务端产生异常,请稍后重试!');
        } else {
            show('error',message);
        }
    } else {
        show('error','网络异常,请稍后重试!');
    }
    return Promise.reject(error);
});

export default request;
  • 写回答

2条回答 默认 最新

查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月25日
  • 已采纳回答 10月17日
  • 创建了问题 10月16日

悬赏问题

  • ¥15 C++ 菜单窗口独立出来,可以随意移动放大缩小。
  • ¥15 java代码写在记事本上后在cmd上运行时无报错但又没生成文件
  • ¥15 关于#python#的问题:在跑ldsc数据整理的时候一直抱这种错误,要么--out识别不了参数,要么--merge-alleles识别不了参数(操作系统-linux)
  • ¥15 PPOCRLabel
  • ¥15 网友们我该怎么办啊,急
  • ¥15 混合键合键合机对准标识
  • ¥100 现在不懂的是如何将当前的相机中的照片,作为纹理贴图,映射到扫描出的模型上
  • ¥15 目标跟踪,计算机视觉
  • ¥15 魔霸ROG7 pro,win11.息屏后会显示黑屏,如图,如何解决?(关键词-重新启动)
  • ¥15 有没有人知道这是哪里出了问题啊?要怎么改呀?