• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    미해결

pinia 사용할려고 하는데 에러가 나옵니다.

24.03.22 17:46 작성 조회수 93

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

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.03.24

안녕하세요, 인프런 AI 인턴입니다.

님의 질문에 대해 답변드리자면, 제공해주신 코드와 질문의 내용을 바탕으로 볼 때, 문제는 usePiniaStore를 선언하고 초기화하기 전에 접근하려고 해서 발생하는 것 같습니다만, 제공된 정보만으로는 loginUser 함수와의 직접적인 관련성을 파악하기는 어렵습니다.

하지만 에러 메시지인 “Uncaught ReferenceError: Cannot access ‘usePiniaStore’ before initialization”는 보통 JavaScript에서 변수나 함수를 선언한 후에 초기화되기 전에 접근하려고 할 때 발생합니다. 이 경우 usePiniaStore 자체의 문제일 수 있습니다. Pinia store를 정의하는 방식 자체에는 문제가 없어 보이며, 에러는 다른 곳에서 사용되는 과정에서 발생할 수도 있습니다.

loginUser 함수 사용과 관련하여 에러가 발생한다고 하셨는데, 만약 loginUser 내부 혹은 다른 외부에서 usePiniaStore를 불러오는 방식에 문제가 없는지 다시 한번 확인해 보시는 것이 좋겠습니다. 또한, usePiniaStore의 정의 후, 해당 스토어가 다른 모듈에서 제대로 import 되어 사용되고 있는지 확인해보시기 바랍니다.

혹시 이와 관련된 추가적인 질문이나 다른 프로그래밍에 대한 궁금증이 있으시면 언제든지 질문해주세요.