본문 바로가기

JS, TS3

[JS] order of object properties 공용 테이블 컴포넌트를 개발하며 생긴 궁금증을 해결한다. 관리자단 기능을 개발하면서 가장 많이 사용될 요소는 데이터 테이블 형식의 UI라고 생각이 되어 재사용 가능한 데이터 테이블 컴포넌트를 구성하는데, 객체의 각 데이터 field들의 정렬에 대해 고민한 내용을 정리 기획 어느 형태의 객체 배열이 data로 들어오더라도, 기본적으로 랜더링이 이뤄질 수 있도록 구현하려 함 랜더링 할 때, column의 순서를 정해줄 수 밖에 없는데 이 순서를 Object.keys method를 사용하여 가져오려다 해당 메서드의 작동 방식이 궁금하여 조사를 진행 Object.keys method의 작동 방식에는 룰에 따른 순서가 있었다. number, string, symbol 순으로 정렬이 이루어지며 number 정렬은 .. 2022. 4. 21.
craco, craco-alias craco를 사용하여 기존 CRA로 구성된 프로젝트의 설정을 eject하지 않고 수정할 수 있음 craco 각 환경에 맞게 jsconfig / tsconfig 설정 파일에서 craco 설정 파일을 include하여 적용 tsc가 tsconfig을 찾아 읽어와 컴파일*시 craco 설정 파일을 반영할 것임 transpile craco-alias craco plugin, 디렉토리의 별칭을 부여하여 상대경로를 개선할 수 있음 craco config 파일에 플러그인으로써 삽입되며, 인라인 혹은 분리 가능 (tsConfigPath) 의문점 craco config에 플러그인으로써 삽입되었고, tsconfig.json에 include 되었는데 tsconfig.json에 extends property로 왜 한번 더 적.. 2022. 4. 15.
[TS] @types 종종 라이브러리들은 TS를 지원하지 않을때가 있다. 이럴 경우에 TS를 지원하게 직접 구성하거나, 다른 사람이 만들어 놓은 해당 라이브러리의 타입 패키지를 받아 구성할 수 있다. TS 는 node_modules/@types//index.d.ts 를 인식하여 해당 패키지의 타입을 인식한다. 만약 라이브러리에 타입 파일이 존재하지 않는다면, TS 를 지원하지 않는것이고 우리가 직접 구성하거나 (인텔리센스는 기대할 수 없을것이다), 미리 만들어진 타입 패키지를 적용시키면 된다. 2022. 4. 7.