๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ
195

๊ตฌ๊ธ์์ ์ ์ํ๋ ์ต์ ํ๋ ์ค๋ฅ ๋ฉ์ธ์ง ์์ฑ๋ฒ
2023.04.13
์๋ฌธ Writing Helpful Error Messages ์ด์ธ์๋ ๊ณตํ์๋ค์ ์ํ techincal ๋ฅ๋ ฅ ํฅ์์ ์ํด ๊ณต์ ์ฌ์ดํธ ์์ ๊ต์ก์๋ฃ๋ฅผ ๊ณต์ ํ๊ณ ์๋ค. ์์ธํ ๊ฐ์ด๋๋ฅผ ํ๋์ฉ ์ดํด๋ณด๊ธฐ ์ , ์ค๋ฅ๋ฉ์ธ์ง ์์ฑ ์ ๊ท์น์ ๋จผ์ ์์๋ณด๋๋ก ํ์. ์ค๋ฅ ์๋ฆผ์ ์ฆ์ ๋ฐ์์์ผ๋ผ. ์คํจ๋ฅผ ์กฐ์ฉํ๊ฒ ๋๊ธฐ์ง ๋ง๋ผ. ์ค๋ฅ์ ๊ทผ์์ด ๋ฌปํ์ง ์๋๋ก ํด๋ผ. ์ค๋ฅ ์ฝ๋๋ฅผ ๊ธฐ๋กํ๋ผ. ์ต์ ํ๋ ์ค๋ฅ ๋ฉ์ธ์ง ์ค๋ฅ์ ์์ธ์ ์ ๋ฌํ๋ผ identify the error's cause ์ฌ์ฉ์์๊ฒ ์ด๋ค ๋ฌธ์ ๊ฐ ์๋ ์ง ํ์คํ๊ฒ ์ ๋ฌํด์ผ ํ๋ค. โ ์๋ชป๋ ์ ๊ทผ์
๋๋ค. โ ํด๋น ๋๋ ํ ๋ฆฌ๊ฐ ์กด์ฌํ์ง๋ง ์ฐ๊ธฐ ๊ฐ๋ฅํ ์ํ๊ฐ ์๋๋๋ค. ํด๋น ๋๋ ํ ๋ฆฌ์ ํ์ผ์ ์ถ๊ฐํ๋ ค๋ฉด, ๋๋ ํ ๋ฆฌ๊ฐ ์ฐ๊ธฐ ๊ฐ๋ฅํ ์ํ์ฌ์ผ ํฉ๋๋ค. [์ฐ๊ธฐ ๊ฐ๋ฅํ ์ํ๋ก ๋ง๋ค ..

[React] FETCH ์ AXIOS ์ ์ฐจ์ด์
1
2023.04.13
What is difference between Fetch and Axios ? JS์์ ๋ง์ด ์ฌ์ฉํ๋ HTTP ๊ธฐ๋ฐ ๋น๋๊ธฐ ํต์ ๋ฐฉ๋ฒ์ธ Axios ์ Fetch ์ ์ฐจ์ด์ ๋ํด ์์๋ณด๋๋ก ํ์. Axios/Fetch ์๊ฒจ๋ ๋ฐฐ๊ฒฝ ๊ธฐ์กด์ ์น์์๋ ์ด๋ค ์ ๋ณด๋ค์ ๋น๋๊ธฐ๋ก ์์ฒญํ๊ธฐ ์ํด์ XHR(XML HTTP Request) ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ์ฌ์ผ๋ง ํ๋ค๊ณ ํ๋ค.. ๊ทผ๋ฐ XHR์ ๋๊ฒ ๋ถ์น์ ํ๊ฒ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ค๊ณ ํ๋ค. (๋ฐ์ดํฐ๋ฅผ ํต์งธ๋ก ์ค๋ฒ๋ฆฐ๋ค๋์ง..) ์์ฒญ์ ์ํ๋ ๋ณ๊ฒฝ์ ๊ณ์ ๋ณด๊ณ ์๊ฒ ํ๋ ค๋ฉด ์ด๋ฒคํธ๋ฅผ ์ถ๊ฐ๋ก ๋ฑ๋กํด์ ๋ณ๊ฒฝ์ฌํญ๋ค์ ๋ค์ ๋ฐ์์ผ ํ๊ณ .. ์์ฒญ์ ์ฑ๊ณต/์คํจ/์ํ๋ณ๊ฒฝ ๋ฑ์ ๋ฐ๋ฅธ ๋ถ๊ธฐ๋ฅผ ๋๋๋ ๊ฒ๋ ๋ณต์กํ๋ค. → ์๋ก์ด url์ ํธ์ถํ ๋๋ง๋ค ๋ชจ๋ ํ์ด์ง๋ฅผ ์๋กญ๊ฒ ๊ทธ๋ ค์ผ ํ๋ ๋ฑ์ ํํ ์๊ฐํ๋ ..

[๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ
์ค๊ณ ๊ธฐ์ด] 11์ฅ. ๋ด์ค ํผ๋ ์์คํ
์ค๊ณ
2023.04.13
๋ด์ค ํผ๋ ๋? ํ ํ์ด์ง ์ค์์ ์ง์์ ์ผ๋ก ์
๋ฐ์ดํธ ๋๋ ์คํ ๋ฆฌ๋ค๋ก, ์ฌ์ฉ์ ์ํ ์ ๋ณด ์
๋ฐ์ดํธ, ์ฌ์ง, ๋น๋์ค, ๋งํฌ, ์ฑ ํ๋(app activity), ๊ทธ๋ฆฌ๊ณ ํ์ด์ค๋ถ์์ ํ๋ก์ฐํ๋ ์ฌ๋๋ค, ํ์ด์ง, ๋๋ ๊ทธ๋ฃน์ผ๋ก๋ถํฐ ๋์ค๋ '์ข์์(likes)' ๋ฑ์ ํฌํจํ๋ ๊ฒ ๋น์ทํ ์ ํ์ ๋ฌธ์ ๋ก ํ์ด์ค๋ถ ๋ด์ค ํผ๋, ์ธ์คํ๊ทธ๋จ ํผ๋, ํธ์ํฐ ํ์๋ผ์ธ ์ค๊ณ ๋ฑ์ด ์๋ค๊ณ ํ๋ค. 1๋จ๊ณ. ๋ฌธ์ ์ดํด ๋ฐ ์ค๊ณ ๋ฒ์ ํ์ ๋ชจ๋ฐ์ผ ์ฑ, ์น ๋ชจ๋ ์ง์ํด์ผํจ ์๋ก์ด ์คํ ๋ฆฌ ์ฌ๋ฆฌ๊ธฐ ๋ฐ ๋ณด๊ธฐ ๋ค ๊ฐ๋ฅํด์ผํ๋ค. ํผ๋ ๋์ด์ ๊ฐ๋จํ๊ฒ ์๊ฐ ํ๋ฆ ์ญ์(reverse chronological order)์ผ๋ก : ์ต์ ์ ํ ๋ช
์ ์ฌ์ฉ์๋ ์ต๋ 5000๋ช
์ ์น๊ตฌ๋ฅผ ๊ฐ์ง ์ ์์ ํธ๋ํฝ ๊ท๋ชจ๋ ์ฝ 1,000๋ง๋ช
ํผ๋์๋ ์ด๋ฏธ์ง๋ ๋น๋์ค..

[React] UseEffect ์์์ ์ฝ์์ ์ฐ์ผ๋ฉด ์ ๋๋ฒ ์ฐํ๋๊ฑธ๊น? (๋๋ฒ ๋ ๋๋ง)
2023.04.13
0. about UseEffect UseEffect ํจ์ ๋ฆฌ์กํธ ์ปดํฌ๋ํธ๊ฐ ๋ ๋๋ง ๋ ๋๋ง๋ค ํน์ ์์
์ ์คํํ ์ ์๋๋ก ํ๋ Hook component์ mount ์ํ๊ฐ ๋ฐ๋ ๋, ํน์ ๋ด์ฉ์ด update ๋์์ ๋, ํน์ ์์
์ ์ฒ๋ฆฌํ ์ ์๊ฒ ํด์ค๋ค. ์ฌ์ฉ๋ฒ ์ import React, {useEffect} from 'react' ์ด๋ ๊ฒ ํจ์๋ฅผ ๋ถ๋ฌ์์ useEffect(()=>{ ๊ฐ์ด ๋ณ๊ฒฝ๋ ๋๋ง๋ค ํ๊ณ ์ถ์ ์ผ },[๊ธฐ์ค ๊ฐ]) ์ด๋ ๊ฒ ์ฌ์ฉํด์ฃผ๋ฉด ๋๋ค. ์ปดํฌ๋ํธ๊ฐ ํ๋ฉด์ ๊ฐ์ฅ ์ฒ์ ๋ ๋๋ง ๋ ๋ ๋ฑ ํ ๋ฒ๋ง ์คํํ๊ณ ์ถ์ ๋์๋ ๊ธฐ์ค๊ฐ์ด ๋ค์ด๊ฐ๋ [] ๋ถ๋ถ์ ๊ทธ๋๋ก ๋น ๋ฐฐ์ด๋ก ๋๋ฉด ๋๋ค. 1. ๋ฌธ์ ์ํฉ useEffect(()=>{},[]) ์๋ฅผ ๋ฃ์ด์ฃผ๋ฉด ์ด๋ก ์ ๋ฑ! ํ๋ฒ๋ง ๋ถ๋ฌ์์ผ ํ๋๋ฐ...

[html] ๊ธฐ๋ณธ SEO / [react] SEO pre-rendering ๋ฐฉ์์ผ๋ก ๋จน์ด๊ธฐ
2023.04.12
์ค๋์ HTML์ ๊ธฐ๋ณธ SEO ์ ๋ํด ์์๋ณด๋ ค๊ณ ํ๋ค. ์ฌ์ ๋ ๋ช์ผ ์ ์ ๋ด๊ฐ TITLE ๋ ์ ๋ฐ๊พธ๊ณ ํ๋ก์ ํธ๋ฅผ ์ฌ๋ฆด๋ปํ ์ ์ด ์์ด์ ๋๋ HTML์ H๋ ๋ชจ๋ฅด๋๊ตฌ๋ ๋ผ๊ณ ๊นจ๋ฌ์๊ธฐ ๋๋ฌธ์ด๋ค. ๋์ฐธ์ฌ๋ ๋์น๊ป ๋ง์๋์ง๋ง.. ๋ํ ์ฐ๋ฆฌ๊ฐ ๋ง๋ ์๊ธฐ ์น์ฑ ๐ถ์ ๋ณด๋ค์ถ์ด ๋งํฌ๋ฅผ ์ถ๊ฐํด๋ ์๋ฌด๋ฐ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ์ ๊ณตํด์ฃผ์ง ์๋๋ค. ๋
ธ์
๋ ๋ง์ฐฌ๊ฐ์ง์ด๋ค. ํ์ฐธ ๋ก๋ฉ์ด ๊ฑธ๋ฆฌ๋ค๊ฐ - ๊ทธ๋ฅ ๋งํฌ ์ด๋ฆ๋ง ๊ฑธ์ด์ค๋ค ๐ฅ ๋๊ฐ ์ด๋ฐ ๋๋์ด๋ค.. ์ฝฉ์ง์ผ.. ๋ ๋์ด์ ์๋๊ฐ์จ ๐ธ ์ด ์ด์ ์ ๋ํด์๋ ์ฌ๊ฐํ ๊ฑด ์๋๊ณ ์์ฃผ ๊ฐ๋จํ๊ฒ HTML ๊ธฐ๋ณธ SEO์ ๋ํด ์๋ฉด ํด๊ฒฐํ ์ ์๊ฒ ๋๋ค. ๐ต๐ต๐ต ์ฐ์ 0. SEO ๋? Search Engine Optimization์ ์ฝ์๋ก, ๊ฒ์์์ง์ต์ ํ ๋ฅผ ์๋ฏธํ๋๋ฐ, ์น ์ฌ์ดํธ์ ์นํ์ด์ง๋ฅผ ๊ฒ์..

2023 ๊ฐ๋ฐ ๋ถ๋ฌธ ์๊ธฐ๊ฐ๋ฐ to do list ์์นด์ด๋น
2023.04.12
ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ๋ก๋๋งต 2023 ํ๋ก ํธ์๋ ๋ก๋๋งต ์ฐธ๊ณ ์๋ณธ ์์

[๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ
์ค๊ณ ๊ธฐ์ด] 10์ฅ. ์๋ฆผ ์์คํ
์ค๊ณ
2023.04.12
1๋จ๊ณ. ๋ฌธ์ ์ดํด ๋ฐ ์ค๊ณ ๋ฒ์ ํ์ ์๋ฆผ ์ข
๋ฅ: ํธ์ ์๋ฆผ, SMS ๋ฉ์ธ์ง, ์ด๋ฉ์ผ ์ฐ์ฑ ์ค์๊ฐ(soft real-time) ์์คํ
์ด๋ผ๊ณ ๊ฐ์ IOS, ์๋๋ก์ด๋(android) ๋จ๋ง, ๊ทธ๋ฆฌ๊ณ ๋ฉํฑ/๋ฐ์คํฌํฑ์ ์ง์ํด์ผ ํจ. ์๋ฆผ: ํด๋ผ์ด์ธํธ ์ ํ๋ฆฌ์ผ์ด์
ํ๋ก๊ทธ๋จ์ด ๋ง๋ค์๋ ์๊ณ , ์๋ฒ์์ ์ค์ผ์ค๋ง ํ ์๋. ์ฌ์ฉ์๊ฐ ์๋ฆผ ๋๊ธฐ๋ ๊ฐ๋ฅํด์ผํจ. ํ๋ฃจ์ ์ฒ๋ง ๊ฑด ๋ชจ๋ฐ์ผ ํธ์ ์๋ฆผ, ๋ฐฑ๋ง ๊ฑด์ SMS ๋ฉ์ธ์ง, 5๋ฐฑ๋ง ๊ฑด์ ์ด๋ฉ์ผ 2๋จ๊ณ. ๊ฐ๋ต์ ์ค๊ณ์ ์ ์ ๋ฐ ๋์ ๊ตฌํ๊ธฐ ์๋ฆผ ์ ํ๋ณ ์ง์ ๋ฐฉ์ 1. IOS ํธ์ ์๋ฆผ ์๋ฆผ ์ ๊ณต์(provider) ์๋ฆผ ์์ฒญ(notification request)์ ๋ง๋ค์ด ์ ํ ํธ์ ์๋ฆผ ์๋น์ค(APNS)๋ก ๋ณด๋ด๋ ์ฃผ์ฒด ์๋ฆผ ์์ฒญ์ ๋ง๋ค๊ธฐ ์ํด์๋... ๋จ๋ง ํ ํฐ(device..

[๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ
์ค๊ณ ๊ธฐ์ด] 9์ฅ. ์น ํฌ๋กค๋ฌ(Web Crawler) ์ค๊ณ
2023.04.12
์น ํฌ๋กค๋ฌ๋? ๋ก๋ด(robot) ๋๋ ์คํ์ด๋(Spider)๋ผ๊ณ ๋ถ๋ฆ ๊ฒ์ ์์ง์์ ๋๋ฆฌ ์ฐ๋ ๊ธฐ์ ๋ก, ์น์ ์๋ก ์ฌ๋ผ์ค๊ฑฐ๋ ๊ฐฑ์ ๋ ์ปจํ
์ธ ๋ฅด ์ฐพ์๋ด๋ ๊ฒ์ด ์ฃผ๋ ๋ชฉ์ -> ๋ช๊ฐ์ Web Page ์์ ์์ํด์ ๊ทธ ๋งํฌ๋ฅผ ๋ฐ๋ผ ๋๊ฐ๋ฉฐ ์๋ก์ด ์ฝํ
์ธ ๋ฅผ ์์งํ๋ค... ํฌ๋กค๋ฌ๊ฐ ์ด์ฉ๋๋ ๊ณณ๋ค ? 1. ๊ฒ์ ์์ง ์ธ๋ฑ์ฑ(Search Engine Indexing) ํฌ๋กค๋ฌ๊ฐ ์ ์ผ ๋ณดํธ์ ์ผ๋ก ์ฌ์ฉ๋๋ ๊ณณ ์น ํ์ด์ง๋ฅผ ๋ชจ์ ๊ฒ์ ์์ง์ ์ํ ๋ก์ปฌ ์ธ๋ฑ์ค(local index)๋ฅผ ๋ง๋ฌ ex) Googlebot - ๊ตฌ๊ธ(Google) ๊ฒ์ ์์ง์ด ์ฌ์ฉํ๋ ์น ํฌ๋กค๋ฌ 2. ์น ์์นด์ด๋น(Web Archiving) ๋์ค์ ์ฌ์ฉํ ๋ชฉ์ ์ผ๋ก ์ฅ๊ธฐ๋ณด๊ด์ ์ํด ์น์์ ์ ๋ณด๋ฅผ ๋ชจ์ผ๋ ์ ์ฐจ๋ฅผ ๋งํจ ex) ๋ฏธ๊ตญ ๊ตญํ ๋์๊ด(US Librar..

[HTTP/ HTTPS] ์ฐจ์ด์ HTTPS๋ก ๋ณํํ๋ ๋ฐฉ๋ฒ (feat.React)
2023.04.12
๋๋ ๋๊ฐ์ ์ฐจ์ด๋ฅผ ๋ณด์์ด๋ผ๊ณ ์๊ณ ์๋๋ฐ.. ๋ด๊ฐ ๋์น๊ณ ๊ฐ๋ ๋ถ๋ถ์ด ์์์๋ ์์ผ๋ ๋ค์ ์์๋ณด๋๋ก ํ์ ๋ ์ธ ๊ณ HTTP ๋? ํ์ดํผ ํ
์คํธ ์ ์ก ํ๋กํ ์ฝ(Hypertext Transfer Protocol)์ ์ฝ์ ์๋ก ๋ค๋ฅธ ์์คํ
๋ค ์ฌ์ด์์ ํต์ ์ ์ฃผ๊ณ ๋ฐ๊ฒ ํด์ฃผ๋ ๊ฐ์ฅ ๊ธฐ์ด์ ์ธ ํ๋กํ ์ฝ ์ธํฐ๋ท ์ด๊ธฐ์ ๋ชจ๋ ์น์ฌ์ดํธ์์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ์ฉ๋์๋ ํ๋กํ ์ฝ์ด๋ฉฐ.. ์๋ฒ์์ ๋ธ๋ผ์ฐ์ ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํด ์ฃผ๋ ์ฉ๋๋ก ์ ์ผ ๋ง์ด ์ฌ์ฉ๋๋ค๊ณ ํ๋ค. HTTPS ๋? ํ์ดํผ ํ
์คํธ ์ ์ก ํ๋กํ ์ฝ ๋ณด์(Hypertext Transfer Protocol Secure)์ ์ฝ์ ๋ง ๊ทธ๋๋ก ๋ณด์์ฑ์ด ์ถ๊ฐ ๋์๋ค๋ ์๋ฏธ. ์ผ๋ฐ HTTP ํ๋กํ ์ฝ์ ๋ฌธ์ ๋ " ์๋ฒ์์๋ถํฐ ๋ธ๋ผ์ฐ์ ๋ก ์ ์ก๋๋ ์ ๋ณด๊ฐ ์ํธํ๋์ง ์๋๋ค๋ ๊ฒ " = ๋ฐ์ด..

[REACT] JSON ์๋ฒ ์์ฑ ํ ๋ฐ์ดํฐ ๋ฐ์์ค๊ธฐ
2023.04.12
์์ฑ๋ณธ ์ฌ์ง... ๋ ์ธ ๊ณ JSON-SERVER ? ๋น๊ต์ ๊ฐํธํ๊ฒ ์์ฃผ ์งง์ ์๊ฐ์ ๋ค์ฌ REST API๋ฅผ ๊ตฌ์ถํด์ฃผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ. ์ฃผ๋ก ํ๋กํ ํ์
์ ๋ง๋ค๊ฑฐ๋, ๊ณต๋ถํ๊ณ ์ค์ตํ ๋.. ์ด์ฉํ๋ ์๋ฒ๋ก ์ฌ์ฉํ๋ฉด ์์ฃผ ๊ตฟ์ธ ๋๊ตฌ ! REST API ์๋ฒ์ ์ ๋งํ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ์ ๋๋ถ๋ถ ๊ฐ์ถ๊ณ ์๋๋ฐ ํ๋ก๋์
์ฉ์ผ๋ก๋ ๋ถ์ ํฉํ๋ค๊ณ ํ๋ค. ๋๋ ๊ณต๋ถํ๊ธฐ ์ํ ์ฉ์ด๋๊น ์๋ฌดํผ ๋ ์ธ ๊ณ ~! ๐ JSON SERVER Setup ๋๋ npm์ ์ฌ์ฉํด์ json-server๋ฅผ ์ค์นํ๋ค. ์๋ฒ๋ฅผ ๋ถ์ด๊ณ ์ถ์ react ํ์ผ์ด ์๋ ํด๋ ์ต์๋จ์์ ํฐ๋ฏธ๋์ ์ด์ด์ // ์๋ฒ ํด๋๋ฅผ ๋ง๋ค์ด์ค๋ค. ๋๋ ์ฑ์ฅ์ฉ์ด๋ผ ์ด๋ฆ์ ์ด๋ ๊ฒ ์ง์๋ค. $ mkdir server-grow // ๋ง๋ ์๋ฒ ํด๋๋ก ์ด๋ $ cd ./server-gro..

[React] input - sql injection ๋ฐฉ์ง
2023.04.12
SQL INJECTION ์ด๋? ์ฌ์ฉ์๊ฐ ์ ์์ ์ธ ์
๋ ฅ์ด ์๋ ๋น์ ์์ ์ธ ์์์ SQL ๋ฌธ์ ์
๋ ฅํด์ DB์ ๋น์ ์์ ์ผ๋ก ์ ๊ทผํ๋ ๊ฒ.. ๋น์ ์์ ์ด์ง๋ง ์ปดํจํฐ๋ ๋น์ ์์ธ๊ฑธ ๋ชฐ๋ผ์ ๋ฐ์ดํฐ๋ฅผ ๋ค ์ค๋ฒ๋ฆฐ๋ค (๋ฌธ์ ) SQL INJECTION ๋ณด์ ๋ฐฉ๋ฒ ์
๋ ฅ ๊ฐ์ ๋ํ ๊ฒ์ฆ (์ง๊ธ ํ ๊ฑฐ์) Prepared Statement ๊ตฌ๋ฌธ ์ฌ์ฉ - ํ์ค๋ก ์กฐํ ๋๋ ค๋ฒ๋ฆฌ์ง๋ง๊ณ ๋๋ ์ ๊ฒ์ ์กฐ๊ฑด์ด ๋ ๋งํ ์ ๋ค์ ๋ณ์๋ ์ด๋ฐ๋ฐ ์ ์ฅ๋๊ณ ๋ฝ๊ฐ์ ์ฐ๋ ์๋ฆฌ Error Message ๋
ธ์ถ ๊ธ์ง - ๋ํ
์ผ ํ ๊ฒ๋ค์ ๊ฐ๋ฐ ๋จ๊ณ์์ ๊ฐ๋ฐ์๋ง ๋ณด์... ๋ฐฉํ๋ฒฝ ์ฌ์ฉ ํด๊ฒฐ๋ฐฉ๋ฒ ๋๋ ์์์ ๋งํ ๋ณด์ ๋ฐฉ๋ฒ๋ค ์ค 1๋ฒ ์
๋ ฅ ๊ฐ์ ๋ํ ๊ฒ์ฆ์ ํด๋ณด๋๋ก ํ๊ฒ ๋ค. ํํ ๋งํ๋ ์ ๊ท์์ ์ฌ์ฉ ํ ๊ฒ์ธ๋ฐ.. ์ ๊ท์(Regular Expressions)๋..

[React] ํ์ธ์ ๋ฐ์ (with. window.confirm)
2023.04.12
๐ต ํ์ฌ ์ํฉ ๊ฒ์๊ธ delete ํ๋ฉด ๋ฐ๋ก ์ญ์ ๋์ด๋ฒ๋ฆผ ๋ก๊ทธ์ธํ ์ ๋ณด๋ฅผ ๋ฐํ์ผ๋ก ๊ฒ์๊ธ ์์ฑ์๋ฅผ ์ธ์ํด์ ์์ /์ญ์ ๋ฒํผ์ ์ด์ด์ฃผ๊ณ ์๊ธฐ๋ ํ์ง๋ง ์ญ์ ํ ๊น๋ง๊น ๊ณ ๋ฏผํ๋ค๊ฐ ์๊ฐ๋ฝ์ด ๋นจ๋ผ๋ฒ๋ ค์ ์ด์ฌํ ์ด ๊ธ์ ์ง์๋ฒ๋ฆฐ๋ค๋ฉด... ํน์ ์ง์ฐ์ง ์์์ผํ ๊ธ์ ์ง์๋ฒ๋ฆฐ๋ค๋ฉด... ์ฌ์ฉ์๊ฐ ๊ฝค ์ฌํ๊ฒ ๋ ๊ฒ์ด๋ค. ๋ฌผ ํ๋ฐฉ์ธ๋ ์๊ปด์จ์ผ ํ๋ ์ด ์ธ์์์ ์ฌ์ฉ์์ ๋๋ฌผ์ ํ๋์ด ์ฐ๊ฒ ํ ์๋ ์๋ค. ๋ ์ธ ๊ณ ์์ ๊ฐ๋จํ๊ฒ confirm ํ๋ฒ ๋ ๋ฐ๊ณ ํ์ธ ๋๋ฅด๋ฉด ๊ทธ๋ axios ์ ํธ๋ฅผ ์ฃผ๋๋ก ํ์. C#์ messagebox ๊ฐ ์๋ฏ, react์๋ window.confirm์ด ์๋ค. ์ฌ์ฉ๋ฒ์ ๊ฐ๋จํ๋ค. window.confirm("๋์ฐ๊ณ ์ถ์ ๋ฉ์ธ์ง"); ๋ต๋ณ ๊ฐ์ ํ์ธ: true ์ทจ์: false ๋ต๋ณ ๊ฐ๋ ๊น๋ํ๊ฒ..