본문 바로가기
Frontend/Libraries

yarn pnp에서 node-modules로 변경후 supabse CLI 사용하기...

by 디스코비스킷 2024. 7. 1.
반응형

pnp -> node_modules사용 전환

패기롭게 pnp먼저 써보겠다는 다짐(?)을 번복하고 pnp 모드를 포기하다.

MODULE_NOT_FOUND가 계속됐다.
처음 혼자 pnp모드로 세팅하는데 에러잡는게 너무 오래걸려서
node_modules 모드로 전환해서 프로젝트 진행후 나중에 migration하는걸로 해야겠다...

pnp모드인데 자꾸 node_modules에서 supabase를 찾아서 나는 오류인듯.. PATH를 추가해야될것같은데 방법을 모르겠음

1. .yarnrc.yml 파일 수정

nodeLinker: node-modules

2. pnp관련 파일 삭제하기

  • sh 명령어
    • rm -rf .pnp.cjs .pnp.loader.mjs .yarn/unplugged
  • cmd 명령어
    • del .pnp.cjs
    • del .pnp.loader.mjs
    • rmdir /s /q .yarn/unplugged

3. 패키지 node_modules에 설치하기

yarn install 

supabase설치 확인 및 재설치

중요: supabase CLI를 사용할때는 npx를 붙여서 사용해야된다.

0. supabase 설치 확인1

npx supabase --version 

'supabase'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다.
이런 에러가 떴다.

1. supabase 설치 확인2(+ 재설치)

ls node_modules/.bin

위 명령어로 node_modules/.bin에서 리스트 출력한다.
여기서 supabase가 있는지 확인한다.

없다!
node_modules/.bin에 supabase가 없는게 문제인듯.

package.json에서 devDefendencies 목록에는 supabase있는걸 확인했다.
node_modules 폴더 삭제하고 다시 yarn install하니 된다.

ls node_modules/.bin에서 supabase 설치 확인됨

npx supabase —-version -> 잘됨

supabase generate types!(Typescript)

1. package.json script수정/추가(npx 붙여준다)

  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start",
    "lint": "next lint",
    "genTypes": "npx supabase gen types typescript --project-id [내프로젝트ID] > database.types.ts"
  },

자주 사용하는 스크립트라 package.json에 등록해준다.
앞에 npx를 붙인다.

2. supabase 로그인

yarn genTypes하니까

$ ... Access token not provided. Supply an access token by running supabase login or setting the SUPABASE\_ACCESS\_TOKEN environment variable.

이런 에러가 떴는데, 이건 로그인하면 해결됨

npx supabase login

로그인

3. yarn genTypes

로그인 했더니 yarn genTypes 명령이 성공해서 types가 생성되었다.

반응형

최근댓글

최근글

© Copyright 2023 jngmnj