Welcome to my playground
인기글
-
Front [JSON] 서버통신의 시작 우선 JSON에 대한 이야기를 하기 전에 HTTP부터 살펴보자 HTTP(Hypertext transfer protocol) HTTP는 hyptertext transfer protocol의 약자로 웹에서 하이퍼텍스트 뿐만 아니라 리소스, 이미지 파일 등의 교환에 기초가 가 되는 통신 프로토콜(규약)이라고 할 수 있다. 웹(www)은 인터넷 서비스 중 하나이다. (인터넷 서비스에는 웹이 가장 대표적이지만 FTP, E-Mail 등 여러 종류가 있다.) HTTP는 이러한 인터넷, 혹은 그와 유사한 컴퓨터네트워크의 기초가 되는 TCP/IP 프로토콜에서 어플리케이션 계층에 해당하는 프로토콜이다. 이 프로토콜이 중요한 이유는 통신을 담당하는 것이 하나가 아니라 계층화된 여러 레이어가 담당하기 때문이다. 사용자에게는 ..
-
TIL scroll 이벤트가 발생하지 않는 경우 문제 원인: 팝업 레이어에서 스크롤 이벤트를 감지해서 lazy-loading으로 캐싱된 이미지를 스크롤 시마다 변경해주는 메서드가 발생하지 않음. but 팝업 레이어 바깥에서는 scroll Event가 발생하는 데에 문제가 없었다. 문제원인은 팝업 전체의 overflow: hidden 문제 해결: 내부 내부 레이어단의 height: 100% (overflow-y: auto) 였기 때문에 팝업 레이어 내부에서만 스크롤 이벤트가 발생하는 것이다. 그러나 팝업의 height를 변경하거나 팝업 스크롤 시 바깥의 스크롤이 fire 되는 것은 의도한 바가 아니기 때문에 팝업에 ref를 걸어 scroll 이벤트를 캡처해서 처리하였다. import React, { useEffect, useRef } from 'reac.. -
TIL 타입스크립트에서 상수를 안전하게 쓰는 법 1. as const 객체 리터럴이나 배열의 내부 프로퍼티에 접근하는 것을 막아준다. 접근하면 에러! Readonly, ReadonlyArray 같은 것도 똑같은 역할을 해준다. https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes-func.html#readonly-and-const Documentation - TypeScript for Functional Programmers Learn TypeScript if you have a background in functional programming www.typescriptlang.org 2. type typeof keyof typeof, keyof 모두 타입을 반환한다. typeof는.. -
TIL Presentational and Container 패턴과 리액트에 대한 고찰. 해당 패턴에 대해서 아는 것이 없었는데 이번에 구매레이어 쪽 유지보수를 하면서 setShowLoading(true) 이런 로직들이 여러군데 산재해 있어 어지러워서 react의 suspense를 도입하고 싶어 찾아보다가... 결국은 현재 구조로는 도입이 불가능함을 깨닫고 슬퍼하면서 쓰는 글이다 ㅜㅜ 일단 내 수준에서는 그렇다.. 그래서 결론적으로 해당 패턴은 현재의 리액트와 정말정말 어울리지 않는 것 같다. 내가 작업하고 있는 구매레이어는 분석해보니 현재 presentational and container 패턴으로 구성되어있다고 볼 수 있다. 모노레포로 되어있는 프로젝트에서 lib 공통모듈에 몰아두고 Context API를 사용하여 구매레이어에 필요한 함수나 상태들을 가지고 있다. 구매 레이어에 표현하는 ..