React Social Media App Tutorial #2 React.js UI

오젼·2022년 8월 24일
0

강의 #2

코드
git clone -b {branch_name} --single-branch {저장소 URL}

Installation

폴더 세팅 및 패키지 설치

material-ui

npm install @mui/material @emotion/react @emotion/styled
npm install @mui/icons-material

Topbar Component

display: flex

flex

!important

:focus

justify-content

align-itmes

negative margin

z-index: 999

Sidebar Component

css 단위

vh

  • 상대길이 단위
  • 1vh = viewport height * (1/100)

px

  • 절대길이 단위
  • 1px = 1/96th of 1in

calc()

::-webkit-scrollbar

list-style

div vs span

<img> object-fit

Feed(Share, Post component)

box-shadow generator

box-shadow vs -webkit-box-shadow

focus outline

  • https://joyofcode.xyz/css-focus-outline
  • outline none으로 하지 말라고 하고 있음
  • access할 때 안 좋다고 함
  • 강의에선 버튼엔 아웃라인 두고 커서 움직이는 input에서만 outline none으로 했음. access 할 때 충분히 잘 보여서 그대로 둠.

filter()

  • js 배열 내장함수. 조건이 true이면 유지, false이면 버려서 새로운 배열로 반환 함
  • callback 함

?. (Optional Chaining)

  • https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Optional_chaining
  • props.data로 접근하려 할 때 data가 존재하지 않을 수도 있다면 원랜 data && props.data 이런 식으로 && 구문을 사용했었음
  • 이와 똑같은 역할을 하는 게 props?.data
  • data가 있다면 data 가져오고 애초에 data가 없으면 undefined 반환
  • 코드 가독성 up. but 남용하면 안 됨. 애초에 꼭 있어야 하는 요소인데 optional chaining을 해버리면 해당 요소가 없을 때 에러가 안 나 디버깅이 어려워짐

Rightbar Component

flex-wrap

Like Functionality with useState Hook

useState

Profile Page

Login & Register Page

0개의 댓글