Closed lydiacho closed 7 months ago
Link Height tasks by mentioning a task ID in the pull request title or commit messages, or description and comments with the keyword
link
(e.g. "Link T-123").💡Tip: You can also use "Close T-X" to automatically close a task when the pull request is merged.
Summary
closed #382
Screenshot
https://github.com/sopt-makers/sopt.org-frontend/assets/81505421/20875a9e-2004-4c3a-8996-df9622db041e
https://github.com/sopt-makers/sopt.org-frontend/assets/81505421/b7a167a8-a1a0-40a3-b2e3-0d75cc5c7136
Comment
카카오 채널 연동 공식 문서
카카오 디벨로퍼 가입 및 플랫폼 등록 카카오 디벨로퍼에 제 계정으로 sopt.org, localhost:3000,
저희집 IP
:3000 뚫어놨습니다JS SDK 설치 JS SDK는
<script>
로만 설치해야 하고, 또 모든 페이지에서 작동할 수 있도록 최상단에서 실행되어야 한다고 해서 _app에 추가해줬습니다. 또 기존에GoogleTagManager
Script 구현방식과 형태를 통일하기 위해kakao(폴더) > Script.tsx(파일) > KakaoScript
라는 컴포넌트로 분리해서 설치 스크립트 넣어줬습니당JS SDK 초기화
이런 코드로 초기화 해줘야 하는데, SDK 설치 스크립트가 모두 실행된 후에 초기화가 진행되어야 합니다. 따라서 next/script의
Script
컴포넌트의 속성인onLoad
안에 SDK 초기화 함수를 넣어줘서 동기적인 실행을 구현했습니다 .기존에는
문의하기
,의견 제안하기
모두 외부 링크로 이어져야하기 때문에 next/link 컴포넌트 즉a
태그로 구현되었는데, 이를button
태그로 바꾸고 onClick 함수에 1:1채팅으로 연결하는 로직을 넣어줬습니다🚀주의 공식문서에서 하라는 대로만 하면 TS에서는 타입에러가 발생합니다 window 객체에 Kakao 모듈을 못찾겠다고 에러가 나는데요, 따라서 window 전역 객체 내에 우리가 사용할 Kakao 모듈 타입들을 친절히 알려줘야 합니다.
대부분의 아티클에서 Kakao 모듈의 타입을 알 수 없다며 any를 쓰길래 저도 처음엔 이렇게 any를 썼는데요 공홈의 기마이를 죽이는 행위인 것 같아서 다시 제대로 타입 지정을 해주었습니다 제가 사용하는 세가지 메소드의 타입을 Kakao 공식문서 참고해서 직접 넣어줬어요 !
이렇게 공식문서가 제공하는 interface 참고해서 필요한 타입 설정해주는 것도 조은 경험인 것 가타요