์ผ๋ฐ์ ์ธ ๋น๋๊ธฐ ํจ์ ์ฒ๋ฆฌ์์ API ์์ฒญ์ ํ๋ฉด await๊ฐ ์๋ ์๋ ๋ชจ๋ ์์ฒญ์ผ๋ก ๋ฐ์๋ค์ฌ์ง๋ค.await๊ฐ ์๋ ๋น๋๊ธฐ ํจ์ ์์ฒญ ๋ก์ง์ ์ฝ์์ ์ฐ์ผ๋ฉด Promise{} ์ผ๋ก ๋์ค๋ฉฐ๊ฐ์ฒด ๋ด๋ถ์๋ 'fulfilled'๋ก ๋ฐ์ดํฐ ํ์นญ์ด ์งํ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.ํน์ ๋ชฐ๋ผ ๋ฐ์ดํฐ ๋งํฌ ๋ถ๋ถ์ ์คํ๋ฅผ ๋ด์ด ์ผ๋ถ๋ฌ ์ค๋ฅ๋ฅผ ๋ด์๋๋ ์ฝ์์ ์ค๋ฅ๊ฐ ์ฐํ๋ฉฐ ์ ์คํ๋์๋ค. let query = supabase.from(HOTPLACE).select('*'); if (area) query.eq('area', area); console.log('query', query); const getHotplaces = async () => { // let query = await supabase.from(HOTP..
2025.02.16 (์ผ) Works 1. ๊ฒ์์ด ํํฐ๋ง 1-1. ์ํฐ ๊ฒ์ 1-2. join ํด์ ๋ฐ์ดํฐ ๊ฐ์ ธ์ค๊ธฐ 1-3. ๊ฒ์ value ํํฐ๋ง2. ์ฅ์ ํํฐ๋ง (์ ์ฒด / ๊ตญ๋ด / ๊ตญ์ธ) 2-1. onClick ์ด๋ฒคํธ ์ฃผ๊ธฐ 2-2. ํํฐ๋ง ํจ์ ๋ง๋ค๊ธฐ ๊ฒ์์ด ํํฐ๋ง ์ํฐ ๊ฒ์๊ฒ์ ํจ์ ๋ด๋ถ์ ์ํฐ๋ก ๊ฒ์ํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๋ค.๊ฒ์ ํ์๋ ๊ฒ์์ฐฝ์ด ๋น ๊ฐ์ผ๋ก ์ค์ ๋๋ค.// SearchInput.jsxconst handleSearch = e => { if (e.key === "Enter") return; setSearchInput("");}; join ํด์ ๋ฐ์ดํฐ ๊ฐ์ ธ์ค๊ธฐ & ๊ฒ์ value ํํฐ๋ง๊ฒ์์ด ๋๋ ๊ฐ๋ค์๊ธ ์ ๋ชฉ, ๋๋ค์, MBTI, ๊ธ ๋ด์ฉ์ผ๋ก ์ ํ๋ค.๋ฐ๋ผ์ ๋ค ๊ฐ..
2025.02.15 (ํ ) Works 1. HomeContext ์ ์ญ๊ด๋ฆฌ2. Modal ๊ด๋ฆฌ 2-1. ์ ํ ์นด๋ state ๊ด๋ฆฌ 2-2. ๋ซ๊ธฐ ๋ฒํผ HomeContext ์ ์ญ๊ด๋ฆฌ ์ด์ ์๋ HomeContext์์ posts์ ๊ฐ๋ง ์ ์ญ์ผ๋ก ๊ด๋ฆฌ, HomePostCard์์๋ post์ ๊ฐ์ props๋ก ๋ฐ๊ณ users์ comments๋ฅผ state๋ก ๊ด๋ฆฌํ๋ค. ์ค๋์ ๊ฒ์๊ธ์ ํด๋ฆญํ์ฌ ๋ชจ๋ฌ์ฐฝ์ ๋์ฐ๊ณ ์ ํ๋ค.๊ทธ๋ฌ๊ธฐ ์ํด์ ์ด์ ๋ Home, HomePostCard, PostingModal๋ฅผ ํจ๊ป ์ฐ๊ฒฐํ์ฌ ๊ด๋ฆฌํด์ผ ํ๋ค. ๋ฐ๋ผ์ Context์์ posts, users, comments๋ฅผ ํจ๊ป ๋ฌถ์ด๋์๋ค. ์๋๋ supabase์์ Promise.all์ ํตํด posts, users, comm..
2025.02.14 (๊ธ) Works 1. DB ๋ฐ์ดํฐ ๋๊ธฐํ & Home ๊ฒ์๊ธ ๋ถ๋ฌ์ค๊ธฐ (props ์ ๋ฌ)2. ๊ฒ์๊ธ ์ถ๊ฐ ๋ฒํผ3. Layout ์์ ๋ฐ ํ์ด์ง ์ฐ๊ฒฐ(Link) DB ๋ฐ์ดํฐ ๋๊ธฐํ ๐์์ ๋ด์ฉ 1HomeContext ์์ฑํ์ฌ App ์ต์์์ ์ ์ฉsupabase์์ posts ํ ์ด๋ธ์ ๊ฐ์ ๊ฐ์ ธ์ดposts ๋ฐฐ์ด์ state๋ก ๊ด๋ฆฌํจvalue๋ก posts ๋ฐฐ์ด ๋ด๋ ค์คHomePostCard ์ปดํฌ๋ํธ ๋ถ๋ฆฌusers, comments ํ ์ด๋ธ์ ๊ฐ์ ๊ฐ์ ธ์ดusers, comments ๋ฐฐ์ด์ state๋ก ๊ด๋ฆฌํจcard ์๋จ user profile ๊ฐ์ ์ถ๋ ฅํจ (setUserProfile ํจ์)card ํ๋จ comments ๊ฐ์ ์ถ๋ ฅํจ (setComment ํจ์)posts, users, c..
2025.02.13 (๋ชฉ) Works 1. supabase ํน๊ฐ2. git conflict & issue ์ปจํผ๋ฐ์ค3. Prettier ํ์ผ ๊ด๋ฆฌ4. Home ํ์ด์ง UI ๊ตฌํ5. supabase์์ ๋ฐ์ดํฐ ๊ฐ์ ธ์ค๊ธฐ Home ํ์ด์ง UI ๊ตฌํ ๊ฐ๋จํ ๋ง๋ค์ด ๋ณธ Home UIindex.css์ body ์คํ์ผ์ ์ ์ง ์ค์ด๋ผ ํค๋๊ฐ ์งง๊ฒ ๋์จ๋ค.์ง๊ธ์ div๋ก ์ฃผ์์ง๋ง ์ถํ์ ํ๋กํ ์ฌ์ง๊ณผ post ์ฌ์ง์ผ๋ก ๋์ฒดํ ์์ ์ด๋ค. Supabase DOM์ ํตํด ํ๋ฉด ์ปดํฌ๋ํธ์ ์ ๊ทผํ๊ณ ,React๋ฅผ ํตํด ์ํ ๊ด๋ฆฌ๋ฅผ ํ๊ณ ,Redux, Context๋ฅผ ํตํด props๋ฅผ ์ ์ญ์ ์ผ๋ก ๊ด๋ฆฌํ๊ณ ,RRD๋ฅผ ํตํด ํ์ด์ง๋ฅผ ์ด๋ํ๊ณ ,RTK๋ฅผ ํตํด store๋ฅผ ์์ฑํ์ฌ ๊ฐํธํ๊ฒ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ์๋ค. ์ด๋ฒ ํ๋ก์ ํธ์์๋ ์ด์ ๋ด์ฉ..
์ด์ ์ JS ๋ฌธ๋ฒ์ผ๋ก ๊ตฌ์กฐ๋ถํดํ ๋น์ ๋ฐฐ์ ๋ค.[๐ฆ] JS ๋ฌธ๋ฒ - Destructuring (๊ตฌ์กฐ ๋ถํด ํ ๋น) (ํด๋ฆญ) ๋น์์๋ ๋จ์ํ ์์ ๋ก๋ง ์ตํ๋๋ฐ ๋ค์ํ ๊ณณ์์ ๋ง์ด ์ฌ์ฉํ๊ณ ์์ด์ ์ ์ ํท๊ฐ๋ฆฌ๋ ์์ค์Context -> RTK ๋ฅผ ์งํํ๋ฉฐ ์ค์ ์ฌ์ฉ ์์์ ํจ๊ป ์ถ๊ฐ๋ก ์ ๋ฆฌํด๋ณด๊ณ ์ ํ๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ๊ตฌ์กฐ๋ถํดํ ๋น์ (๊ฐ์ฒด๋ ๋ฐฐ์ด์์) ๋ง์ ๊ฐ๋ค ์ค ๋ด๊ฐ ํ์ํ ๊ฐ๋ง ๋ฝ์์ผ ํ ๋ ์ฌ์ฉํ๋ค. ๐๊ฐ์ฒด ์ฌ์ฉ๊ฐ์ฒด ๋ด์ key ๊ฐ์ ์ง์คํ๊ธฐ!๋ค์ํ key : value pair๊ฐ ์๋ ๊ฐ์ฒด์์ ํ์ํ ๊ฐ์ key์ ๋์ผํ๊ฒ ๋ณ์๋ฅผ ์ง์ ํ๋ค.๊ทธ ๋ณ์๋ฅผ { } ๋ด์ ์ ๋ ฅํ์ฌ "๊ตฌ์กฐ๋ถํดํ ๋น ์ ๋๋ค~" ๋ผ๊ณ ์๋ ค์ค๋ค๊ณ ์๊ฐํ๋ฉด ์ฝ๋ค ! ์์ 1: "๋ฉ์ง์ ์ธ "๋ '์ํ๋ช '์ด๋ผ๋ ๋ณ์์, 10000์ '๊ฐ๊ฒฉ'์ด๋ผ๋..
[๋ณธ์บ ํ 10์ผ์ฐจ / ๊ฐ์ธ๊ณผ์ 1์ผ์ฐจ] 25.01.08 Today I Learned๐ก1. ๊ฐ์ธ ๊ณผ์ ํ์ 2. ๊ฑท๊ธฐ๋ฐ ๊ต์ก ๋ฐ ์ค์ต ๐ฉ๐ป๐ป: "์ .. ์ํ๊ณ ์๋์?" ๐ง๐ป๐ซ: "๊ผผ๊ผผํ ์ฝ์ด๋ณด์ธ์" ๋๊ทผ๋๊ทผ ๊ฐ์ธ๊ณผ์ 1์ผ์ฐจ์ ๋๋ค -์ง๋์ฃผ๋ถํฐ ์๋ด๋ฐ์๋ ๊ฐ์ธ๊ณผ์ ๋ ๋ฐ๋ก '์ํ ํ์ด์ง ๋ง๋ค๊ธฐ'ํ ๋น vscode์์ ์์ฑ๋ ํ์ด์ง๋ฅผ ๋ง๋ค๊ธฐ๊น์ง..ํ๋ํ ๊ณผ์ ์ด ๋๊ฒ ์ง๋ง ์ฒ์ฒํ ํ๋ค๋ณด๋ฉด ์์ฃผํ ์ ์์ ๊ฑฐ๋ผ ๋ฏฟ๊ณ !!๊ทธ ๊ณผ์ ์ ๋ฑ๋ฑ์ด ๊ธฐ๋กํด๋ณด๊ฒ ๋ค.๋ฐฐ๋ฐ์ด์์ ํ ๋ฐ์๊ตญ ๋ผ์๋ค..!?๐ฃ ๋ ๋ฒ์งธ ๊ฑท๊ธฐ๋ฐ ์์ ๋ฐ ์ค์ต์ ํตํด ์ด 8๊ฐ์ ์์ฉ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์๋ค.๋น์ทํ ๋ด์ฉ์ ๋ฐ๋ณตํด์ ๋ด ์์ผ๋ก ์ง์ ์ณ๋ณด๋ ํ์คํ ๊ธ๋ฐฉ ์ต๋ ๋๋!!2๋ฒ ๋ฌธ์ ํด๊ฒฐ ๋ฐฉ๋ฒ - typeof8๋ฒ ๋ฌธ์ ํด๊ฒฐ ๋ฐฉ๋ฒ - includes..
๊ต์ก๊ธฐ๊ฐ์ด ์งง์๋งํผ ํ๋ชฐ์์น๋ ์ผ์ ์ 12์ ์ด์ ์ ์๋ณธ์ง๋ ์ผ์ฃผ์ผ์ด ๋์ ๊ฒ ๊ฐ๋ค..๋งค์ผ ์๋ ๊ฐ์, ํน๊ฐ, ๊ทธ๋ฆฌ๊ณ ๊ฐ์ธ๊ณผ์ ๊น์ง..์ด ๋ชจ๋ ๊ฒ์ ๋ ธ๋ฒ ์ด์ค์ธ ๋ด๊ฐ ์งง์ ์๊ฐ ์์ ํด๋ด๊ธฐ์๋ ํ๋ฃจ๊ฐ ๋๋ฌด ์งง๋ค.์ค๋ ์์นํ๋ค๊ฐ ๊ทธ๋ฐ ์๊ฐ์ ํ๋ค."ํ๋ฃจ๊ฐ 48์๊ฐ์ด์๋ค๋ฉด..!" ์ด๋ฐ ์ผ์์ด ๋ฐ๋ณต๋๋ ๋์ ์ง์ค๊ณผ ๋ชฉํ๊ฐ ํ๋ค๋ ธ๋ค.ํ ๋ ์ค ๋๋ ์ฝ๋๋ฅผ ํ๋ฃจ์ข ์ผ ์ง๋ ๋์ ๋ฌ๋ฆฌ, ํ๋ฃจ๋ง์ ๊ณผ์ ๋ฅผ ๋ค ํด๋ด๋ ์ฃผ๋ณ ์ฌ๋๋ค์ ๋ณด๋ฉฐ์์์ง๋ ์ ๋ณด๋ฅผ ๋ค ์๊ณ ์ถ์ ์์ฌ์ด ์๊ฒผ๋ค.๊ฒฐ๊ตญ ์ด๋์ ๋ ์์ฑํ์ง ๋ชปํ ์ํ๋ก ํ๋ฃจ๊ฐ ๋ง๋ฌด๋ฆฌ ๋์๊ณ ๊ทธ๋ด ๋๋ง๋ค ์๊ดด๊ฐ์ด ์ค๋ฉ์ค๋ฉ ์ฌ๋ผ์๋ค. '๋ด๊ฐ ๋ชป ํ๋ ๊ฑธ ๋ค๋ฅธ ์ฌ๋๋ค์ด ์ ํ๋ ๊ฒ์ฒ๋ผ, ๋ค๋ฅธ ์ฌ๋๋ค์ด ๋ชปํ์ง๋ง ๋๋ ์ํ๋ ๋ค๋ฅธ ๊ฒ๋ ์์์!'๋ผ๋ ์๊ฐ์ผ๋ก ํ๋ฃจํ๋ฃจ ํ๋ด๋ดค์ง๋ง.. ํ๋ฃจ ..
[๋ณธ์บ ํ 8์ผ์ฐจ] 25.01.03 Today I Learned๐ก1. JavaScript ๋ฌธ๋ฒ ์ข ํฉ๋ฐ 2์ฃผ์ฐจ ํ๋ก๊ทธ๋๋จธ์ค์์ ์ํ๋ ๊ฒ JavaScript ๋ฌธ๋ฒ ์ข ํฉ๋ฐ 2์ฃผ์ฐจ ๊ณผ์ ๋ฅผ ํ๋ฉฐ 1์ฃผ์ฐจ ๊ณผ์ ๋ฅผ ์ฐธ๊ณ ํ๋ค. ๐ง์๋ฌธ์ ํ๋ก๊ทธ๋๋จธ์ค์ ๋ฌธ์ ๋น ์ ์ถ๋ ฅ ์๋ฅผ ๋์ ํด๋ณด๋ฉฐ ํจ์๋ฅผ ์ฒดํฌํ๋ ๊ณผ์ ์์ console.log ์ solution์ ์์น๊ฐ ํท๊ฐ๋ ธ๋ค. ๐์์1์ฃผ์ฐจ ๊ณผ์ ํ์ด ์ ๋ต๐๐ป ๋ฅผ ๋ณด๋ฉด ํจ์ ์ธ๋ถ์ var๋ก ์ง์ ํ ์์ ๊ฐ & console.log๋ก ๊ฐ์ผ solution์ ํ์ธํ ์ ์๋ค. ๊ฐ์ ์ฐ์ด๋ณด๋ฉด ์ ์ ์ถ๋ ฅ ๋๋ค. 2์ฃผ์ฐจ ๊ณผ์ ํ์ด ์ ๋ต๐๐ป ๋ฅผ ๋ณด๋ฉด ์ฃผ์ ์ฒ๋ฆฌ ๋ '์ ๋ต ํ์ธ์ฉ(1)' ๋ ์ค์ด ํจ์ ๋ด ์ธ๋ก ์๋ ๊ฒ์ ํ์ธ ํ ์ ์๋ค.ํจ์ ๋ด์ ์๋ console.log๋ ํ์ด..
[๋ณธ์บ ํ 7์ผ์ฐจ] 25.01.02 Today I Learned๐ก1. JS ๋ฌธ๋ฒ ์ข ํฉ๋ฐ 1์ฃผ์ฐจ ๊ฐ์2. 1์ฃผ์ฐจ ๊ณผ์ ๊ทธ๋์ Node.js๊ฐ ๋ญ๋ฐ? JavaScript ์ข ํฉ ๋ฌธ๋ฒ ๊ฐ์๋ฅผ ์๊ฐํ๋ฉด์ Node.js ์ค์น๊ฐ ํ์๋ผ๊ณ ํ์ จ๋ค.์์ธํ ์ค๋ช ์์ด ์ค์นํ๊ณ ,vscode์ ์์ฑํ๋ ์ฝ๋๋ฅผ ํฐ๋ฏธ๋์์ 'node 01.js' (01.js๋ ๋ฌธ์ ์ด๋ฆ) ๋ฅผ ํตํด ๋ฐ๋ก๋ฐ๋ก ๊ฒฐ๊ณผ ํ์ธํ ์ ์์๋ค.๋์ฒด๋ก ์ด๋ฐ ์์ด๋ฉฐconsole.log์ ๊ฐ์ ์น ๊ฐ๋ฐ์๋ชจ๋์์ ํ์ธํ๋ ๊ฒ๊ณผ ๊ฐ์๋ค. ๊ทธ๋ฌ๋ค๊ฐ ์์นจ์ ๋ฌธ๋ "Node.js ๊ฐ ๋ญ๋ฐ? ์ด๋ ๊ฒ ๊ฒฐ๊ณผ ๋ณด์ฌ์ฃผ๊ณ ๋์ด์ผ?" ํ๋ ์๊ฐ์ด ๋ค์ด ์ฐพ์๋ณด๋ ๐Node.js ๋JavaScript๋ ์น ๋ธ๋ผ์ฐ์ ์์๋ง ๋์ํ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ง๋ง, โจnode.js๋ฅผ ํตํด ๋ ๋ฆฝ์ ์ผ๋ก ์..