CSS의 캐스케이딩 원칙은 스타일 규칙이 어떤 기준으로 요소에 적용되는지 결정합니다. 이 원칙은 중요도(Importance), 명시도(Specificity), 그리고 선언 순서(Order)의 세 가지 주요 요소로 구성됩니다.중요도: 사용자 지정 스타일이 브라우저 기본 스타일보다 우선합니다. !important 플래그로 중요도를 증가시킬 수 있으나, 남용은 피해야 합니다.명시도: 선택자의 구체성에 따라 우선순위가 결정됩니다. ID 선택자는 클래스나 태그 선택자보다 더 높은 명시도를 가집니다.선언 순서: 동일한 명시도를 가진 규칙 중에서는 마지막에 선언된 규칙이 적용됩니다.CSS 선택자의 종류CSS 선택자는 웹 페이지의 특정 요소에 스타일을 적용하기 위해 사용됩니다. 다양한 선택자 유형이 있으며, 각각의 용..
간단하고 확장 가능한 상태 관리, 쉽고 확정성 있게 만들어 주는 검증된 라이브러리 개발자 채용 공고에서 Redux와 함께 가장 많이 보이는 상태관리 라이브러리 중 하나, 배워두면 두고두고 써먹을 수 있는 라이브러리라고 할 수 있다. 공식 한국어 문서: https://ko.mobx.js.org/README.html MobX에 대하여 · MobX ko.mobx.js.org MobX 5 버전 까지는 @ 데코레이터를 사용했지만 MobX 6 부터는 데코레이터 사용을 지양하는 중. 아래는 공식 문서의 소개 페이지의 일부 특징 작동 원리 event는 observable state를 변경시키는 action을 호출하고, observable state의 변경 사항은 computed value(연산)과 변경 사항에 따라 달..
시작하기에 앞서 사용자의 프로필 사진 데이터를 아마존 S3에 이미지를 업로드 하여 사용하고 있었는데 이미지 업로드 시에 별도의 제한 없이 업로드할 수 있도록 생각했지만 서버에서 1MB 이상은 업로드할 수 없는 문제가 있었습니다. 업로드 가능한 용량을 프론트에서 제한하거나 서버에서 제한을 수정하는 것으로 문제를 해결할 수도 있겠지만 프로필 사진의 경우 항상 같은 크기로 사용자들에게 노출되며 그다지 큰 해상도가 필요하지 않았습니다. 따라서 큰 이미지를 굳이 서버에 저장하고 커다란 이미지를 내려 받는 것을 비효율적이라고 생각했습니다. 그러므로 이미지를 업로드하기 전 압축해서 서버에 업로드하도록 합시다! 이미지를 압축하는 방법은 여러가지 있습니다. 브라우저에서 이미지를 압축하는 방법과 서버에서 압축하는 방법에 ..
리액트에서 전역 상태 관리가 필요한 이유는 애플리케이션의 규모가 커지고 복잡해질수록 컴포넌트간의 데이터 공유와 상태 관리를 보다 효율적으로 처리하기 위해서입니다. 우리는 다양한 이유로 전역 상태 관리의 필요성을 느끼게 됩니다. 저는 주로 컴포넌트간의 데이터 공유와 복잡성 관리를 위해 사용한다고 생각했지만 조사해보니 보다 다양한 이유로 전역 상태 관리를 하고 있는 것을 알 수 있었습니다. 1. 컴포넌트간 데이터 공유 여러 컴포넌트에서 공통적으로 사용되는 상태가 있을 수 있습니다. 예를 들면 사용자 인증 정보, 로그인 상태, 언어, 테마, 설정 등 애플리케이션의 여러 곳에서 공유해야하는 데이터가 있을 때입니다. 2. 상태의 일관성 유지 리액트는 단방향 데이터 흐름을 가지고 있으며 그 방향은 하향식으로 고정되..