Today Sangmin Learned
article thumbnail
728x90

음 슬랙 클론코딩 강의를 마치고, 이제 본격적으로 한달?여간 Next.js + TypeScript를 사용한 프로젝트를 진행해보고자 한다. 근데, 시작부터 뭔가 이상한게..

이렇게 메인에 styled-components를 작성하려고 했는데 갑자기 계속 Invalid Hook Call 에러가 뜨는 것이었다. 그래서, 이유를 찾아봤더니.. styled-components를 설치할 때

npm install --save styled-components
npm install --save @types/styled-components

로 깔아줬는데 이 --save 부분 때문에 제대로 설치가 되지 않은 것 같다. 스택오버플로우를 참고하면, npm 5.0.0 버전부터 --save의 역할을 그냥 install도 하게끔 바뀌었다고 한다. 그래서 문제였나 싶고.. 결국 다시 save를 제외한

npm i styled-components
npm i @types/styled-components

styled-components와 그에대한 타입들을 설치해준 결과 잘 실행이 되었다. 그런데, 렌더링 직후에 styled-components가 적용이 되지 않는 문제가 생겼다. 그래서 찾아보니까, 문자열 안에 스타일이 들어가는 경우는 또 따로 babel이 필요했다.

 

그래서 babel-plugin-styled-components를 다운받고 루트 디렉토리에 .babelrc를 작성해준 뒤 다음과 같은 내용을 넣어주었다.

{
  "presets": ["next/babel"],
  "plugins": [
    [
      "styled-components",
      {
        "ssr": true,
        "displayName": true,
        "preprocess": false
      }
    ]
  ]
}

이렇게 처리를 해주니 되어서, 시험삼아 HomeWrap과 Main을 각각 만들고 스타일 반영을 해준 뒤 렌더링을 해줬다.

 

이외의 일부 설정을 해줬고, 전역적 styled-components 설정 및 외에 기타 세부 설정은 이후에 할 예정이다.

'today i learned' 카테고리의 다른 글

today i learned 7/26  (0) 2021.07.26
today i learned 7/25  (0) 2021.07.25
today i learned 7/24  (0) 2021.07.24
today i learned 7/23  (5) 2021.07.23
[Next.js + TS] today i learned 7/21: 이미지 드래그앤드랍  (0) 2021.07.22
profile

Today Sangmin Learned

@steadily-worked

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!