Input, Textarea 등의 Element에서 한글을 입력하다보면, 입력 후 마지막 글자가 중복으로 하나 더 써져있는 경우가 있습니다.영어에서는 발생하지 않는데, 그 이유는 한글같이 자음과 모음이 하나의 글자로 이루어진 경우는 알파벳처럼 하나의 문자와 다르게 여러
11월 24일 코엑스 근처에 위치한 그랜드 인터컨티넨탈 서울 파르나스에서 NHN FORWARD 2022가 개최되었습니다.이 글에서는 행사에 참석한 후기를 담아보려고 합니다.오전 9시경, 서울 파르나스 호텔에 들어가기 전 찍은 사진입니다.이 사진을 보니 '어떤 하루가 될
정규표현식이란 정규표현식의 사전적 정의는 '특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어' 입니다. 간단하게 말하자면, '문자열의 패턴을 표현한 식' 입니다. 어떠한 규칙을 만족하는 문자열을 찾거나, 만족하는지 확인하거나, 대체하거나, 치환하는
TDD란 테스트 주도 개발로서 서비스의 안정적인 운영과 서비스의 품질을 확보하기 위해 테스트 코드를 작성하고 관리하기 위해서 사용됩니다. TDD를 하기 위해서는 다음의 프로세스가 요구됩니다. 자동화된 테스트 시스템 준비 (e.g. jest, react-testing-
작년 말 이전직장을 퇴사하고 약 5개월에 걸쳐서 재취업을 준비했던 Jin입니다.SI 기업에서 파견이 아닌, 플랫폼 기업에서 서비스에 더욱 몰두하고 싶어서스프링 프레임워크도 좋지만 더욱 인터렉티브한 작업을 위한 개발을 하고 싶어서기타 등등의 스트레스?퇴사를 하고 가장 먼
해당 글에서는 동일한 페이지이지만, 주소 입력으로 바로 가는 경우에는 SSR을 적용하고 다른 페이지에서 타고 들어가는 경우에는 CSR을 적용하는 방법을 설명합니다.핵심은 getServerSideProps, getStaticProps와 같이 서버 단에서 실행되는 함수들에
async 함수는 Promise 객체를 반환합니다.async 함수 내에서 반환되는 부분 이외의 로직은 바로 실행됩니다.async 함수 바깥의 동기적인 코드들이 모두 실행됩니다.async 함수에서 프라미스 객체를 반환합니다. (만약, chaining으로 .then 또는
이런 식으로 옵션에서 suspense: true를 해주면 useQuery에서는 잘 작동하지만 useQueries에서는 suspense가 작동하지 않습니다.제가 테스트해본 결과이런 식으로 default option에 suspense: true 옵션을 주고,useQueri
React 17과 React 18의 FunctionComponent의 인터페이스가 달라졌기 때문에 발생하는 에러입니다.QueryClientProvider의 인터페이스가 React 17 기준으로 맞춰서 있기 때문에 발생합니다.따라서, 이를 다시 React 17 기준으로
git 설정 중 core.ignorecase라는 설정이 있습니다.default는 true인데 이렇게 되면 폴더/파일명에서 대/소문자를 변경해도 인식하지 않습니다.이것을 false로 변경해주면 대/소문자도 구분하게 됩니다.아래의 명령어로 변경해줄 수 있습니다.
<< 태그 >> : << 요약 메시지 >> 형식으로 작성합니다.제목의 처음은 동사 원형으로 시작합니다.총 글자 수는 50자 이내로 합니다.문장의 끝에 특수문자는 삽입하지 않습니다. 예) ., !, ?본문은 한 줄 당 72자 이내로 합니다.본문 내용
input이 포커스되었을 때만 보여지는 컴포넌트가 있었고 그 중 일부분을 클릭할 때 동작을 처리하도록 onClick 속성에 함수를 넣어주었습니다.이런 식으로 조건부 렌더링되는 부분에 onClick을 적용하였는데 이벤트가 발생되지 않았습니다.원인은 정말 간단하였습니다.이
SWR은 Next.js로 유명한 Vercel에서 만든 원격 데이터 가져오기를 위한 Hook입니다.오직 useSWR이라는 훅을 사용하여 데이터를 조작합니다.key: 요청을 위한 고유한 값fetcher: 데이터를 조작하기 위한 함수를 반환하는 프라미스options: SWR
firebase는 구글에서 만든 개발 플랫폼으로 이것을 사용하면 db 구축이나 호스팅 등을 쉽게 할 수 있습니다. firestore는 firebase이라는 플랫폼에서 제공하는 NoSQL 형식의 DB입니다. firebase를 통해 Serverless하게 DB를 구축할
이번 프리온보딩 코스의 하이라이트는 단연 5일 동안 혼자 하는 마지막 개인 기업 과제였습니다.이번 코스 5주 동안 총 팀 프로젝트 8개와 개인 과제 1개로 9개의 프로젝트를 하였습니다.그 중에서 이번 개인 과제를 하면서 다양한 것을 많이 시도해볼 수 있었습니다. (이
다음과 같은 에러는 우리가 API 호출을 하다보면 종종 접하게 되는 에러입니다.클라이언트의 주소와 API 요청하는 주소의 오리진이 달라서 발생합니다.React를 사용한다면 npm을 다운로드 받아서 해결할 수 있습니다.반드시 src 폴더의 바로 아래에 setupProxy
케어닥에서 문서를 잘 만들어주셔서 업무 분담을 하고 디자인을 만드는 데에는 큰 어려움이 없었습니다.주소 검색 API를 호출하여 데이터를 정제하는 과정에서도 생각지 못한 구조로 되어 있어서 팀원 분이 그것을 발견하고 수정하는 데에 약간의 시행착오가 있었지만 그래도 잘 해
리코일은 페이스북에서 만든, 리액트를 위한 상태 관리 라이브러리입니다. 리덕스처럼 보일러 플레이트가 많지 않고, 정말 필요한 코드만을 여러 store로 구성할 수 있어서 개발 생산성과 효율성을 기대하며 프로젝트에 도입하였습니다. RecoilRoot RecoilRo
구글에서 지원하는 material ui (이하 mui)에는 다양한 UI 라이브러리들이 존재합니다. 저의 경우에는 Modal, Dialog, Pagination, Skeleton 등을 주로 잘 사용하고 있습니다.그 중에서 Pagination에 대해 말하고자 합니다.페이지