react๋ก ๋ง๋ ๋งํฌ์ฌ ๊ฐ์ธํ๋ก์ ํธ๋ฅผ 1์ฐจ ์๋ฃํ๊ณ gitHub pages๋ฅผ ์ด์ฉํด ๋ฐฐํฌํ๋ ๊ณผ์ ์์ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค. ๐จ ์๋ฌ ๋ด์ฉ ๋ด ํ๋ก์ ํธ์ ๊ฒฝ์ฐ, ์ฒซ ์์์ด ๋ก๊ทธ์ธ์ด์ด์ ๋ก๊ทธ์ธ ์ปดํฌ๋ํธ๋ฅผ path="/" ๊ฒฝ๋ก๋ก ๋์๋ค. "/" ๊ฒฝ๋ก๋ก ๋ค์ด๊ฐ๋ ์๋ฌด๊ฒ๋ ๋ ๋๋ง๋์ง ์์ ๋นํ๋ฉด๋ง ๋์๋ค. ๐ค ์๋ฌ ์์ธ ๋ผ์ฐํฐ๊ฐ ๊ฐ๋ฆฌํค๋ "/" ๊ฒฝ๋ก๋ https://jeongeum.github.io/ ์ด๋ค. ํ์ง๋ง, ํ์ฌ ํ๋ก์ ํธ์ ๊ฒฝ๋ก๋ https://jeongeum.github.io/MyTodoSite ์ ์๋ค. ๋ผ์ฐํฐ๊ฐ ์ด๋ํ๊ณ ์ํ๋ ๊ฒฝ๋ก์ ์ค์ ํ๋ก์ ํธ์ ๊ฒฝ๋ก ๊ฐ์ ์ฐจ์ด๊ฐ ์๊ธฐ ๋๋ฌธ์ ์ ๋๋ก ๋ ๋์์ ํ์ง ๋ชปํ๊ณ ์๋ ๊ฒ์ด๋ค. โจ ์๋ฌ ํด๊ฒฐ ํด๊ฒฐ 1 // ์์ ์ // ๐ฅ ์ด ๋ถ๋ถ // ์์ ํ // ๐ฅ ..
react๋ก ๋ง๋ ๋งํฌ์ฌ ๊ฐ์ธํ๋ก์ ํธ๋ฅผ 1์ฐจ ์๋ฃํ๊ณ ๋ฐฐํฌํ ํ ๋ค์๊ณผ ๊ฐ์ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค. openweather API๋ฅผ ์ด์ฉํด ํ์ฌ ๋ ์จ์ icon ์ฌ์ง์ ๋ฐ์์ค๋๋ฐ ๊ทธ ๊ณผ์ ์์ ๋ฐ์ํ ๋ฌธ์ ์ธ ๊ฒ ๊ฐ์๋ค. ๐จ ์๋ฌ ๋ด์ฉ Mixed Content: The page at 'https://...' was loaded over HTTPS, but requested an insecure resource 'http://...'. This request has been blocked; the content must be served over HTTPS. ๐ค ์๋ฌ ์์ธ ์ํธํ ๋ https ํ์ด์ง์์ ์ํธํ๋์ง ์์ http๋ฅผ ํตํด ์์ฒญ์ ํ๊ณ ์๊ธฐ ๋๋ฌธ์ ๋ฐ์ํ๋ ์๋ฌ์๋ค. ๋งํฌ์ฌ๋..

๋ฆฌ์กํธ๋ก ๋คํฌ๋ชจ๋ ๊ตฌํํ๊ธฐ ๋คํฌ๋ชจ๋๋ ๋ค์ํ ๋ธ๋๋๋ค๊ณผ ์น ์ฌ์ดํธ์์ ์ด์ ๋ ๊ฑฐ์ ํ์๋ผ๊ณ ๋ด๋ ๋ ์ ๋๋ก ํํ๊ฒ ์ ์ฉ๋๋ ๊ธฐ๋ฅ ์ค ํ๋์ด๋ค. ๋ ์ญ์ ํด๋ํฐ, ๋ ธํธ๋ถ, ์ฑํ ์ดํ ๋ฑ์์ ๋คํฌ๋ชจ๋๋ฅผ ๋งค์ฐ ์ ์ฉํ๊ณ ์๊ณ ํ๋ก ํธ์๋ ๊ฐ๋ฐ์๋ผ๋ฉด ์ด์ ๋ ํ์ ๊ธฐ๋ฅ์ด ๋ ๋คํฌ๋ชจ๋๋ฅผ ๊ตฌํํ ์ค ์์์ผํ๋ค๊ณ ์๊ฐํด์ ์ด๋ฒ ๊ฐ์ธ ํ๋ก์ ํธ ๊ธฐํ์ ์ถ๊ฐํ๊ฒ ๋์๋ค. ๐ค ์งํ ์์ ๋ผ์ดํธ๋ชจ๋, ๋คํฌ๋ชจ๋ ๋์์ธ ๋ผ์ดํธ/๋คํฌ theme.js ์ธํ ๋คํฌ๋ชจ๋ ๊ตฌํ ํ ๊ธ๋ฒํผ ์ํ ๊ด๋ฆฌ ๋ชจ๋ ์ ์ง ๊ธฐ๋ฅ ๐จ ๋์์ธ (feat. Figma) ์ ์ฒด์ ์ธ ๋ผ์ดํธ/๋คํฌ ๋ชจ๋์ ๋์์ธ์ ์์ ๊ฐ์ด ๋ง๋ค์ด๋ณด์๋ค. ๊ฐ ์ปดํฌ๋ํธ๋ค์ ํฌ๋ช ๋๋ฅผ ์ฃผ๊ณ ์ ์ฒด์ ์ธ ์๊ฐ์ ํ๋๋น์ด ๋๋ค. ๋คํฌ๋ชจ๋์ผ ๋์๋ ์์ ํ ๊ฒ์์์ด ์๋๋ผ ์์ฃผ ์ด๋์ด ๋จ์๊ณ์ด๋ก ๊ณจ๋๋ค. ..

## ๋ฌธ์ ์ ๊ฐ์ธ ํ๋ก์ ํธ (์ค์ฌ์ ๋งํฌ์ฌ)๋ฅผ ์งํํ๋๋ฐ ํฌ๋๋ฅผ ๋ฑ๋กํ๋ ๊ณผ์ ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค. ๋ถ๋ช ํ๋์ ํฌ๋๋ง ์ ๋ ฅํ๋๋ฐ ๋งจ ๋ท ๊ธ์๊ฐ ์ถ๊ฐ๋ก ๋ฑ๋ก๋๋ ๋ฌธ์ ์๋ค. onKeyDown ์ด๋ฒคํธ๊ฐ ๋ฐ์๋ ๋ ๋ฐ์ดํฐ๊ฐ ์ถ๊ฐ๋๋๋ก ์ฝ๋๋ฅผ ๊ตฌํํ๊ธฐ ๋๋ฌธ์ ๊ทธ ๋ถ๋ถ์ ๋ณด๊ธฐ๋ก ํ๋ค. // ๋ฑ๋ก ๋ฒํผ ํด๋ฆญ const onClickAddTodo = (e) => { if (inputValue && e.key === "Enter") { setTodoData((prev) => [ ...prev, { id: Date.now(), content: inputValue, isEdit: false, isDone: false, }, ]); setInputValue(""); } }; onClickAddTodo(e)} /> ์๋ฌด๋ฆฌ๋ด๋..

๊ฐ์ธ ํ๋ก์ ํธ MyTodoSite (์ค์ฌ์ ๋งํฌ์ฌ)๋ฅผ ์งํํ๋ฉด์ ํธ๋ฌ๋ธ์ํ ์ด ์๊ฒผ๋ค. ํฌ๋๋ฅผ ๋ฑ๋กํ ํ localStorage์ ์ ์ฅ์ด ๋๋๋ฐ ์๋ก๊ณ ์นจ์ ํ๋ฉด localStorage๊ฐ ์ ๋ถ ์ด๊ธฐํ ๋๋ ์ํฉ์ด์๋ค. ๋๋ ๋น์ฐํ ํฌ๋ ๋ฑ๋ก ํ ๋ ๋ก์ปฌ์คํ ๋ฆฌ์ง์ ์ ์ฅํ๊ณ ์ด๊ธฐ ๋ ๋๋ง ์ ๋ก์ปฌ์คํ ๋ฆฌ์ง์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ์๋ค๊ณ ์๊ฐํ๋๋ฐ ์๋์๋ค. ๋ด๊ฐ ๋๋ฌด ์์ผํ์์....๐ ํด๋น ํธ๋ฌ๋ธ์ํ ์ ํด๊ฒฐํ๋ ๊ณผ์ ์์ ๋๊ฐ์ง๋ฅผ ์๊ฒ๋์๋๋ฐ ์ด๊ฒ์ ๋ํด ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํ๋ค. ๋ฌธ์ ์ ํฌ๋๋ฅผ ๋ฑ๋กํ ํ ๋ก์ปฌ ์คํ ๋ฆฌ์ง์ ์ ์ฅ ํ์ง๋ง, ์๋ก๊ณ ์นจํ๋ฉด ๋ก์ปฌ ์คํ ๋ฆฌ์ง์ ์ ์ฅ๋ ๋ฐ์ดํฐ๊ฐ ์ญ์ ๋๋ ๋ฌธ์ ๋ฐ์ ๊ธฐ์กด ์ฝ๋ import React, { useEffect, useState } from "react"; import..

๊ธฐ์ ๊ณผ์ ๋ฅผ ํ๋ฉด์ ์ฒดํฌ๋ฐ์ค๋ฅผ ํด๋ฆญํ๋ฉด ํด๋น li์ ๋ฐฐ๊ฒฝ์์ด ๋ฐ๋๋ ๊ธฐ๋ฅ ๊ตฌํ(์ ํ๋ ํจ๊ณผ)์ ์ฒ์ ํด๋ณด์๋ค. ์ด๋ป๊ฒ ํด์ผํ ์ง ๋จธ๋ฆฌ๋ก๋ ์กฐ๊ธ ์๊ฒ ๋๋ฐ ์ฝ๋ ์์ฑ์ด ์ฝ๊ฒ ๋์ง ์์์ ๊ฒ์์ํ๋ฉฐ ๊ฒจ์ฐ ๊ตฌํ์ ํ๋ค. ์์ด๋ฒ๋ฆฌ์ง ์๊ธฐ ์ํด ์ ๋ฆฌ๋ฅผ ํด๋ณธ๋ค! โ๏ธ ๊ธฐ๋ฅ App.js import { Table } from "./components/Table/Table"; function App() { const d = new Date(); const year = d.getFullYear(); let month = d.getMonth() + 1; let day = d.getDate(); if (month { if (isChecked) { return [...prevCheckedItems, item.no]; } else ..

๊ฐ์ฅ ํํ์ง๋ง ์์ฐจ๊ณ ๊ธฐ๋ณธ๊ธฐ๋ฅผ ์ตํ๊ธฐ์ ์ข์ ๊ฒ ๊ฐ์ ํฌ๋๋ฆฌ์คํธ๋ฅผ ๋ฆฌ์กํธ๋ก ๋ง๋ค์ด๋ณด์๋ค. ์๋ฐ์คํฌ๋ฆฝํธ๋ก๋ ๊ทธ๋์ 2-3๋ฒ ์ ๋ ๋ง๋ค์ด๋ณธ ๊ฒ ๊ฐ์๋ฐ..๐ค ๋ฆฌ์กํธ๋ก๋ ๊ฐ์ ๋ฐ๋ผ ์น ๊ธฐ์ต๋ง ๋๊ณ ํผ์ ํ์ผ๋ก๋ ๋ง๋ค์ด๋ณธ ๊ธฐ์ต์ด ์๋ ๊ฒ ๊ฐ์๋ค. ์ด๋ ๊ฒ ๋๊ฑฐ ๊ฐ๋จํ ํฌ๋ ์ฑ์ ๋ง๋ค๋ฉด์ ๋ฆฌ์กํธ ๊ธฐ๋ณธ๊ธฐ๋ฅผ ๋ค์ ์ก๊ณ ์ถ๋ค๋ ์๊ฐ์ด ๋ค์๋ค! ๐จ ๋์์ธ ๊ธฐ๋ฅ ๊ตฌํ์ด ๋ ์ค์ํ ๊ฒ ๊ฐ์์ ๋์์ธ์ ์ด์ด์ด ๊น๋ํ๊ฒโจ ํด์ผ์ง ์๊ฐํ๋ค. ํผ๊ทธ๋ง๋ฅผ ์ ๋ค๋ฃจ์ง๋ ๋ชปํ์ง๋ง ์์ ๋ชจ๋ฅด๋ ๊ฑด ์๋๊ธฐ์ ํผ๊ทธ๋ง๋ฅผ ์ด์ฉํด ๋์์ธ ์์์ ์ก์๋ณด์๋ค. (์ฌ๋ฐฑ์ ๋ฏธ-!ใ ใ ใ ) โ๏ธ ๊ธฐ๋ฅ ๊ธฐ๋ฅ ๊ตฌํ์ ์์์ ์ปดํฌ๋ํธ๋ฅผ ๊ธฐ๋ฅ๋ณ๋ก ๋๋์ด ์ฃผ์๋ค. ๊ณตํต ์ปดํฌ๋ํธ (๋ฒํผ, input)๋ฅผ ๋ง๋ค๊น ์๊ฐํ๋๋ฐ ์ฌ๊ธฐ์์๋ ๊ทธ์ ๋๊น์ง ํ์ํ์ง ์์ ๊ฒ ๊ฐ๋ค๊ณ ํ๋จํ..

๊ธฐ์ ๊ณผ์ ๋ฅผ ํ๋ฉด์ 'Link ํ๊ทธ๋ฅผ ์จ์ผํ๋..? ๊ทธ๋ฅ ์ํฉ์ ๋ง์ถฐ ์ปดํฌ๋ํธ์ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฅด๊ฒ ๋๊ฒจ์ฃผ๋ฉด ๋๋ ค๋..?๐ค' ํท๊ฐ๋ ธ๋ ์๊ฐ์ด ์์๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก๋ ํ์์ ๋ฐฉ์์ผ๋ก ์งํ์ ํ์ง๋ง ์๋ฌด๋๋ ๋ผ์ฐํฐ์ ๋ํ ์ดํด๊ฐ ๋ถ์กฑํ๋ค๊ณ ํ๋จ๋์ด ๊ธฐ๋ณธ ์์ ๋ฅผ ํตํด ๊ฐ๋ ์ ๋ค์ ์ก์๋ณด๊ธฐ๋ก ํ๋ค. React์์์ ํ์ด์ง์ด๋ ๋ผ์ฐํ ?๐ค ์ฌ์ฉ์๊ฐ ์์ฒญํ URL์ ๋ฐ๋ผ ์๋ง๋ ํ์ด์ง๋ฅผ ๋ณด์ฌ์ฃผ๋ ๊ฒ. ์์ ๐ ์ผํ๋ชฐ ํ์ด์ง๋ฅผ ๋ง๋ ๋ค๊ณ ๊ฐ์ ํ์ ๋, ์ด๋ค ํ์ด์ง๋ค์ด ํ์ํ ๊น? ์ํ ๋ชฉ๋ก ํ์ด์ง ์ํ ์์ธ ํ์ด์ง ์ฅ๋ฐ๊ตฌ๋ ํ์ด์ง ๋ง์ด ํ์ด์ง ... ๋ฑ ์ด์ฒ๋ผ ์ฌ๋ฌ ํ์ด์ง๋ก ๊ตฌ์ฑ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค ๋ ํ์ด์ง๋ณ๋ก ์ปดํฌ๋ํธ๋ฅผ ๋ถ๋ฆฌํ๋ฉด์ ํ๋ก์ ํธ๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํด ํ์ํ ๊ฒ์ด ๋ผ์ฐํ ์์คํ ์ด๋ค. โ๏ธ ์ค์น npm install ..

์ด ๊ธ์ ์์์ผ๋ก ๋ช ๊ฐ์ ํฌ์คํ ์ ๊ธฐ์ ๊ณผ์ ๋ฅผ ํ๋ฉด์ ๋ถ์กฑํ๋ค๊ณ ๋๋ ๊ฐ๋ ์ ์ ๋ฆฌํด๋ณด๋ ๊ธ์ด ๋ ๊ฒ ๊ฐ๋ค. ํนํ๋ sticky์ ๊ฒฝ์ฐ, ์น SQL ํ๋ก์ ํธ๋ฅผ ํ ๋์๋ stickyํ ํค๋๋ฅผ ๋ง๋๋ ๊ฒ์ด ๋ด ๋ด๋น์ด์๋๋ฐ ๊ทธ ๋น์์๋ ๋ถ์กฑํ ๊ฐ๋ ์ ์ต์ง๋ก ๊ฐ์ ธ๋ค ์ฐ๋ ค๊ณ ๋ง ํ๋ ๋๋์ด ๋ค์์๊ธฐ์ ์ด๋ฒ์ ์ฝ๊ฒ ์ ๋ฆฌ๋ฅผ ํด๋ณด๊ณ ์ ํ๋ค. ๐ฎ position์ ์ญํ ํ๋ฉด์์์ ์ด๋ค ์์์ ์์น๋ฅผ ์ด๋์ ์ค์ง ๊ฒฐ์ ํด์ฃผ๋ ์์ฑ ๐ position: sticky ์ผ๋ฐ์ ์ธ ๋ฌธ์ ํ๋ฆ์ ๋ฐ๋ผ ๋ฐฐ์น ๋ถ๋ชจ ์์๋ฅผ ๊ธฐ์ค์ผ๋ก top, bottom, left, right๋ฅผ ํตํด ์์น ์ ์ (ํ์) ์ต์ด ์คํฌ๋กค ์ ์ผ๋ฐ์ ์ธ ๋ฌธ์ ํ๋ฆ์ ๋ฐ๋ผ ์์ง์ด์ง๋ง, ์คํฌ๋กค์ด ํน์ ์ง์ ์ ๋๋ฌํ๋ฉด fixed์ฒ๋ผ ๊ณ ์ ๐ position: fixed ์ผ..

๋ฐฐ์ด์๋ ์์๊ฐ ๋ชจ๋ 2๋ฒ์ฉ ๋ค์ด์์ง๋ง ์ค์ง 1๊ฐ์ ์์๋ง 1๋ฒ ๋ค์ด์๋ค. 1๋ฒ๋ง ๋ค์ด๊ฐ ์๋ ์์๋ฅผ ์ถ๋ ฅํ๋ ๋ฌธ์ ์ด๋ค. ์ฒ์ ์งํํ ๋ฐฉ๋ฒ 1. ๋ฐฐ์ด ๊ธธ์ด๋งํผ 0์ผ๋ก ์ฑ์์ง ์๋ก์ด ๋ฐฐ์ด์ ์ ์ธํ๋ค. 2. ๋ฐฐ์ด ๋ด ๊ฐ๋ค์ด [1, 1, 2, 2, 3, 5, 5] ์ด๋ฉด ์๋ก์ด ๋ฐฐ์ด์ ๊ฐ ์ซ์ ์ธ๋ฑ์ค์ count๋ฅผ ํด์ค๋ค. 3. ๊ทธ๋ฌ๋ฉด ์๋ก์ด ๋ฐฐ์ด์ [0, 2, 2, 1, 0, 2]๋ก ์นด์ดํธ๊ฐ ๋ ๊ฒ ์ด๋ค. 4. ๋ฐฐ์ด์ ์ํํ๋ฉด์ 2๋ก ๋๋ ๋๋จธ์ง๊ฐ 0์ด ์๋๋ฉด (ํ์์ด๋ฉด) ์๋ก์ด ๋ฐฐ์ด์์ ํ์์ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํ๋ค. → ์ด๋ ๊ฒ ํ๋๊น ์คํ์ ๋์ง๋ง ์ ์ถํ ๋์๋ ๋ค ํ๋ ธ๋ค๊ณ ๋์๋ค. ํด๊ฒฐ ๋ฐฉ๋ฒ xor์ ์๋ฆฌ๋ฅผ ์ด์ฉํ๋ ๋ฐฉ์์ด๋ค. xor์ ์๊ธฐ ์์ ๊ณผ xor ์ฐ์ฐ์ด ๋๋ฉด 0์ด ๋์ค๊ณ 0๊ณผ xor ์ฐ์ฐ์ ํ๋ฉด ์๊ธฐ..
- Total
- Today
- Yesterday
- php
- php๊ฒ์ํ๋ง๋ค๊ธฐ
- ์ด๋๋ฆฌ์
- php ๋ฌ๋ ฅ๋ง๋ค๊ธฐ ์์ฉ
- ํ์ฅ์ค์ต ๊ธฐ๋ก
- ๋ ธ๋ง๋์ฝ๋
- set ๊ฐ์ฒด
- ํ์ฅ์ค์ต
- ํํ์ด์ง ๋ง๋ค๊ธฐ
- ๋ฆฌ์กํธ
- MySQL
- css grid
- JavaScript
- ์กธ์ ์ํ
- CSS
- ๊ฐค๋ฌ๋ฆฌ๋์ฐ๊ธฐ
- ๋ธ๋ก์ฒด์ธ
- C์ธ์ด
- ์ค๋งํธ์ปจํธ๋ํธ
- indexOf()
- ๋ฐฑ์ค
- ์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ ์ค๊ธฐ ์ ๋ฆฌ
- ํ๋ก๊ทธ๋๋จธ์ค
- ์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ ์ค๊ธฐ
- ์กธ์ ์ํ์ค๋น
- ์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ
- ์ ์ฒ๊ธฐ ์ค๊ธฐ ์ ๋ฆฌ
- DAPP
- HTML
- ์ ์ฒ๊ธฐ ์ค๊ธฐ
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |