Next.js에서 useSession을 이용하다 생긴 버그이다. "use client"; import { useSession } from "next-auth/react"; import { useRouter } from "next/navigation"; import { useEffect, useMemo } from "react"; export default async function Write() { // { if (session.data === null) { router.push("/"); } }, [session]); return ( 글작성 버튼 ); } 위의 코드는 write 폴더의 page.js파일로, 글을 작성하기 위한 폼을 렌더링할 페이지이다. useSession을 이용해 현재 로그인한 상황인지..
이번에 비동기 관련 과제들을 수행하였다. 이번 과제는 주어진 문제에 맞는 코드를 작성하는 것이었는데, 맞추기는 하였으나 100% 이해했다고 자신있게 말할 정도는 아닌 것 같아, 복습하기 위해 글을 작성한다. 정신없는 내 상태만큼 두서없는 글이 될 것이다. 1. fs 모듈 1-1. Callback const getDataFromFile = function (filePath, callback) { fs.readFile(filePath, (err, data) => { if (err) { callback(err, null); } else { callback(null, data.toString()); } }); }; readFile에 file의 path가 주어져 파일을 읽는다. 만약 에러가 발생했다면 if (er..

1. 동기(synchronous), 비동기 (asynchronous) 동기란, 위의 그래프와 같이 특정 코드의 실행이 완료될 대까지 기다리고 난 후, 다음 것을 실행하는 것을 의미한다. 예를 들어, 밥을 다 먹은 후, 양치를 하고, 양치를 다 한 후, 옷을 갈아입는 것, 이런 식으로 무언가가 끝난 후 다른 것을 하는 것이 동기 처리이다. 그에 반해, 비동기는 특정 코드 실행이 완료되는 것을 기다리지 않고 다음 코드를 실행하는 것이다. 예를 들어, 밥을 먹으면서 tv를 켜서 같이 보는 것이나 길을 걸으면서 노래를 흥얼거리는 것과 같이, 무언가가 끝나는 것을 기다리지 않고 실행하는 것이 비동기 처리이다. 대표적인 비동기 함수로는 setTimeout이 있는데, 간단한 예시는 아래와 같다. setTimeout(..
- Total
- Today
- Yesterday
- 완전탐색
- CSS
- async
- typescript
- 스택
- 알고리즘
- 자바스크립트
- 햄버거버튼
- 백준
- 비트마스킹
- 타입스크립트
- react
- 다이나믹프로그래밍
- 카카오맵
- aws
- C++
- 동적계획법
- 코드스테이츠
- Next.js
- themoviedb
- 넥스트js
- SQL
- Redux
- 순열
- 리액트
- NextJS
- 구현
- 프로그래머스
- BFS
- 브루트포스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |