일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 모던 자바스크립트
- 자주 까먹는
- 코딩테스트
- 스파르타코딩클럽
- deep dive
- 구글 로그인
- 초기셋팅
- useRouter
- js
- 프로그래머스
- 프로젝트 셋팅
- 내일배움캠프
- CORS
- React
- 셋팅
- 소셜 로그인
- nextjs
- domain
- 티스토리챌린지
- 코테
- vscode
- array정적메서드
- 모던자바스크립트
- 코드카타
- git
- Next
- 리터럴
- 오블완
- vercel
- error
- Today
- Total
목록Today I Learned (106)
파피루스
무한 스크롤 구현하려고 하니 너무 막막해서 하나씩 적어보려고 한다. 0. 무한 스크롤은 어떤 순서로 동작할까?일단 무한 스크롤의 동작을 상상해보았다. 아래처럼 움직이면 되지않을까? // 1. 최초 list 로딩 // 2. scroll 최하단 감지 // 3. hasNextPage 여부 체크 -> false일 때 fetch 요청하지 않도록 // 4. fetch해서 리스트 불러오기 // 5. 화면에 뿌리기 ==> react는 fetch한 데이터 set하면 된다. 1. 최초 list 로딩 const [posts, setPosts] = useState([]); useEffect(() => { (async () => { api.getRecentPosts().then((list) => ..
컨벤션 구조[적용 범위(선택 사항)]: [본문(선택 사항)][꼬리말(선택 사항)] 사용 예시 feat: 무한 스크롤 // : // 필수 규격feat(api): email 전송 기능 추가 // 타입[적용범위]: 설명feat!: 배송 완료 시 고객에게 이메일 전송 // 타입!:설명 // !는 단절적 변경을 강조*단절적 변경(breaking change) : 다른 것에 영향을 끼칠 수 있는 변경 각 영역에 들어가는 정보들타입- feat : 새 기능 추가- fix : bugfix- 그 외 : 앵귤러 컨벤션 기반 타입들 (build, chore..
postscol namedata typekeynullalbedefault비고idintPKnot nullauto increment titletextPKnot null contenttext nullable (empty) writertext nullable (null) user_id 와 매칭 (FK는 걸지 않음)created_attimestamp now() tagtext , 기준으로 끊기 (예시 : a,b,c,d,e)likeint not null0 viewint not null1 userscol namedata typekeynullalbedefault비고idintPKnot nullauto increment created_attimestamp not nullnow() idtextPKnot null..
useEffect useMemo컴포넌트 또는 데이터의 생애 주기에 따라 값을 업데이트하고 싶을 때 사용 dependencies가 mount 될때useEffect : 함수를 실행한다. (mount, unmount 실행은 반드시 paint 1회 후에 이루어진다. --> 화면 깜빡 거림 등이 동반)useLayoutEffect : 함수를 실행한다.useMemo : 값을 할당한다.useCallback : 함수를 할당한다.언제 useMemo와 useCallback을 사용하는가?컴포넌트, 데이터의 생애주기에 맞춰 값을 업데이트하고 싶을 때리렌더링 될 때마다 새롭게 값을 계산하거나 새로운 함수를 정의하는 것이 문제가 될 때새로운 값의 게산이나 새로운 함수의 정의가 무거울 때값, 함수의 참조값을 유지하는 것이 중요할 ..
1. props drilling전역 변수 관리라는 개념이 없었을 땐, 부모가 자식에게 계속해서 내려주는 형태였다.grand parent > parent > childparent 는 사용하지 않지만 child가 필요로 하는 props를 grand parent로 부터 받아 내려주는 것을, props drilling이라고 한다.props drilling 을 해결하기 위해 redux가 나왔고, 이후에 React 개발진이 전역관리를 위해 내놓은 해결책이 context 이다. 2. redux 전역 변수를 자유롭게 쓰고 싶은데, 너무 쉽게 하면 여기저기서 쓸까봐 걱정이 된 것인지, redux 까다롭게 정해진 규격으로만 전역변수를 쓰거나 읽을 수 있게 했다. store라는 저장소에 전역변수들을 저장하고, 전역변수에 ..
1. autufocus2. 메모 작성 시 첫 줄 title 보여주기 (길면 줄여쓰기)3. 새로운 메모하면 최상단에 추가 (최신순 정렬)4. 현재 열려있는 memo 데이터 삭제 시 제일 최신 것 선택하기그 외에는 view와 동일 https://teamsparta.notion.site/03-5965145e055b4912b4dd3bb6611a1363 과제 03 - 메모앱 만들기 | Notion메모앱 만들기teamsparta.notion.site # 메모앱 만들기## 01. 과제 샘플- https://www.notion.so/teamsparta/03-5965145e055b4912b4dd3bb6611a1363- [링크: https://memo-app-ashen.vercel.app] ## 02. 요구사항### ..