
🧐 aria-label과 텍스트 콘텐츠
aria-label 어떻게 사용해야 할까?

이미지 최적화 1.기본 사용법 Next.js에서는 이미지 최적화를 위해 next/image컴포넌트를 사용한다. import Image from 'next/image' <Image src="/images/profile.jpg" width={500} height={500} alt="프로필 이미지" quality={75} /> src: 이미지 소스 URL width 및 height: 필수 속석으로, 이미지의 원본 크기를 ...

앱 라우터의 SEO 설정 1.Metadata App Router에서는 Pages Router의 Head컴포넌트를 대체하는 metadata객체를 이용해 페이지의 메타데이터를 설정할 수 있다. import { Metadata } from 'next'; export const metadata: Metadata = { title: "타이틀", description: "설명" openGraph: { title: "타이틀, d...

페이지 라우터의 SEO 설정 1.Head 페이지 별로 Head컴포넌트 안에 작성하여 SEO 관련 메타 데이터를 설정할 수 있다. import Head from "next/head"; export default Page() { return ( <> <Head> <title>타이틀</title> <meata property="og:image" content={썸네일 주소} /> <...

학습 내용 오늘은 Header 컴포넌트를 완성했다. 이 과정에서 SPA에서 중요한 클라이언트 사이드 라우팅과 검색 기능을 구현하는 방법을 배웠다. 클라이언트 사이드 라우팅 구현 // App.js // Header 컴포넌트에 전달하는 이벤트 핸들러 handleClick: async () => { // 브라우저 히스토리에 새 항목 추가 (URL을 홈으로 변경) history.pushState(null, null, "/"); // 포켓...

학습 내용 오늘은 바닐라 JavaScript를 사용한 SPA 구현의 핵심인 컴포넌트 패턴에 대해 심화 학습을 하고, 이를 적용하여 PokemonList 컴포넌트를 완성했다. 바닐라 JS 컴포넌트 설계 패턴 1. 애플리케이션 진입점 설정 먼저, SPA의 시작점인 index.js에서 다음과 같이 애플리케이션을 초기화한다. import App from './App.js'; // 앱의 루트 요소 선택 const $app = document.query...

학습 내용 오늘은 Node.js와 Express.js를 활용하여 간단한 서버를 구축하는 방법을 학습했다. Express.js는 Node.js 환경에서 웹 서버를 쉽게 구축할 수 있게 해주는 프레임워크로, 간결한 코드만으로 서버 기능을 구현할 수 있다. Express 서버 기본 설정 const express = require("express"); const path = require("path"); const app = express(); c...