목록CS (42)
juni
Next.js와 Reactjs의 차이점을 설명해주세요. React는 UI 라이브러리로, 컴포넌트 기반의 구조를 통해 UI를 효율적으로 개발할 수 있고 CSR( 클라이언트 사이드 렌더링 )에 초점이 맞춰져 있습니다. 그리고 라우팅 등의 기능은 별도의 라이브러리를 사용해야합니다. 하지만 Next.js는 React기반의 프레임워크로 SSR( 서버사이드 렌더링 ), SSG( 정적 사이트 생성 ), API 라우팅, 404 페이지 등의 기능을 기본 제공하여 SEO( 검색엔진 최적화 ) 최적화와 성능 향상에 유리합니다. 따라서 React의 단점을 보완하여 빠른 개발을 할 수 있도록 도와줍니다.주요 차이점 React ..
translate와 translate3dtranslate(x, y):2D 이동을 위한 함수입니다.X축과 Y축으로만 이동이 가능해요.예: translate(-50%, -50%)는 요소를 X축으로 -50%, Y축으로 -50% 이동시킵니다.translate3d(x, y, z):3D 이동을 위한 함수입니다.X축과 Y축 외에도 Z축으로 이동이 가능해요.예: translate3d(-50%, -50%, 0)는 X축과 Y축으로는 -50%씩 이동하고, Z축 이동은 없도록 설정합니다 (0).차이점 요약2D 이동만 필요하면 translate를, 3D 효과나 Z축 이동이 필요한 경우 translate3d를 사용합니다.실제로 Z축 이동이 없더라도 translate3d를 사용하면 하드웨어 가속이 적용되어 애니메이션 성능이 약간 ..
usePathnameNext.js의 내장 훅 중 하나로, 현재 페이지의 경로(pathname)를 가져오는 데 사용됩니다. Next.js 13부터 도입된 App Router 기능과 함께 사용할 수 있으며, 페이지의 경로를 쉽게 얻을 수 있게 도와줍니다.주요 용도현재 경로에 따른 동적 UI 렌더링: 예를 들어, 특정 페이지 경로에 따라 다른 콘텐츠를 표시하거나, 경로에 맞는 메뉴나 네비게이션을 강조하는 등의 작업을 할 수 있습니다.라우팅 로직 구현: 현재 경로를 기반으로 페이지를 리다이렉트하거나, 조건에 따라 동작을 달리할 수 있습니다.현재 페이지가 https://example.com/about/team이라면, usePathname()은"/about/team" event.origin웹 브라우저에서 postM..
json 응답 구조일반적인 응답 구조REST API와 같은 일반적인 웹 서비스에서는 보통 다음과 같은 방식으로 응답이 이루어집니다:HTTP 상태 코드 (HTTP Status Code):클라이언트가 서버에 요청을 보내면, 서버는 응답과 함께 HTTP 상태 코드를 반환합니다.이 상태 코드는 응답의 성공 여부를 나타내며, 클라이언트는 이를 보고 요청이 성공했는지 실패했는지 판단할 수 있습니다.예시: 200 OK, 404 Not Found, 500 Internal Server Error 등. HTTP 상태 코드는 항상 존재하지만, 이는 JSON 응답의 일부가 아니라 HTTP 응답 헤더에서 제공됩니다.HTTP 응답 상태 코드(response.status)를 통해 요청 성공 여부를 확인할 수 있습니다.statusC..
라이브러리ToastifyReact-Toastify가 대표적입니다.빠르고 쉽게 알림을 추가할 수 있도록 설계된 라이브러리입니다.미리 정의된 스타일과 기능이 제공되기 때문에, 설정이 간편하고 바로 사용할 수 있습니다.다양한 기능을 제공: 자동 닫힘, 애니메이션, 위치 설정, 클릭 이벤트 등.ToastPrimitivesToastPrimitives는 이름 그대로 **Primitives(기본 구성 요소)**를 제공하는 라이브러리입니다.알림의 기본 기능을 위한 저수준 구성 요소를 제공하며, 스타일링이나 동작을 사용자 정의할 수 있도록 설계되었습니다.설정과 스타일을 직접 커스터마이징하고 싶은 경우에 더 유용합니다.기본 스타일이나 고정된 기능이 제공되지 않으므로, 완전한 자유도를 원할 때 사용합니다.ToastPrimi..
Jest / vitest 기반 유닛 테스트 코드 작성 및 테스트참고 사이트https://velog.io/@thdrldud369/Vite-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8%EC%97%90-jest-%EC%B6%94%EA%B0%80%ED%95%98%EA%B8%B0 Vite 프로젝트에 Jest 추가하기Vite로 만들어진 React 프로젝트에 Jest를 추가하는 방법에 대한 설명velog.io 하지만 jset를 사용하려는데 에러가 발생했습니다.Error [ERR_REQUIRE_ESM]: require() of ES Module C:\Users\sangj\OneDrive\바탕 화면\sparta\onboarding\node_modules\strip-ansi\index.js from..
NextAuth.js 사용하기NextAuth.js는 Next.js에서 인증과 세션 관리를 쉽게 할 수 있는 라이브러리입니다. OAuth, 이메일 인증, 자격 증명 기반 인증 등 다양한 인증 방식을 지원합니다. NextAuth.js를 사용하면 세션 관리를 간단하게 할 수 있어요. npm install next-auth 설정 (pages/api/auth/[...nextauth].js):import NextAuth from "next-auth";import Providers from "next-auth/providers";export default NextAuth({ providers: [ Providers.GitHub({ clientId: process.env.GITHUB_CLIENT_ID,..
1. refetch:즉시 데이터를 다시 가져옵니다: refetch는 호출된 즉시 쿼리를 다시 실행하여 데이터를 갱신합니다.사용자 상호작용에 적합: 특정 이벤트(예: 버튼 클릭, 사용자 액션) 후 데이터를 즉시 갱신해야 할 때 적합합니다.단일 호출: 해당 컴포넌트에서 refetch()를 호출하면, 쿼리의 데이터를 한 번만 갱신합니다.적합한 경우:데이터가 특정 사용자 액션 이후 즉시 새로 고쳐져야 하는 경우.예를 들어, 사용자가 버튼을 눌러 직접 데이터를 다시 가져오게 하는 상황.2. invalidateQueries:쿼리를 무효화하고 필요할 때 다시 실행: 쿼리가 "더 이상 유효하지 않다"고 표시되며, react-query가 적절한 시점(예: 컴포넌트가 다시 마운트되거나, 페이지 포커스가 바뀔 때)에 쿼리를..