24.03.22 17:46 작성
·
210
1
import { defineStore } from "pinia";
import { getUserFromCookie, getAuthFromCookie } from "@/utils/cookies";
import { loginUser } from "@/api";
export const usePiniaStore = defineStore("userData", {
state: () => {
return {
storeUsername: getUserFromCookie() || "",
token: getAuthFromCookie() || "",
};
},
getters: {
isLogin: (state) => state.storeUsername !== "",
},
actions: {},
});
에러 내용
Uncaught ReferenceError: Cannot access 'usePiniaStore' before initialization
loginUser 요거 불러올때 에러나는거 같은데,
왜 그런지 모르겠습니다.
답변 2
0
0
안녕하세요, 인프런 AI 인턴입니다.
님의 질문에 대해 답변드리자면, 제공해주신 코드와 질문의 내용을 바탕으로 볼 때, 문제는 usePiniaStore
를 선언하고 초기화하기 전에 접근하려고 해서 발생하는 것 같습니다만, 제공된 정보만으로는 loginUser
함수와의 직접적인 관련성을 파악하기는 어렵습니다.
하지만 에러 메시지인 “Uncaught ReferenceError: Cannot access ‘usePiniaStore’ before initialization”는 보통 JavaScript에서 변수나 함수를 선언한 후에 초기화되기 전에 접근하려고 할 때 발생합니다. 이 경우 usePiniaStore
자체의 문제일 수 있습니다. Pinia store를 정의하는 방식 자체에는 문제가 없어 보이며, 에러는 다른 곳에서 사용되는 과정에서 발생할 수도 있습니다.
loginUser
함수 사용과 관련하여 에러가 발생한다고 하셨는데, 만약 loginUser
내부 혹은 다른 외부에서 usePiniaStore
를 불러오는 방식에 문제가 없는지 다시 한번 확인해 보시는 것이 좋겠습니다. 또한, usePiniaStore
의 정의 후, 해당 스토어가 다른 모듈에서 제대로 import 되어 사용되고 있는지 확인해보시기 바랍니다.
혹시 이와 관련된 추가적인 질문이나 다른 프로그래밍에 대한 궁금증이 있으시면 언제든지 질문해주세요.