์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
- ํ๋ก์ ํธ์บ ํ
- #ํ๋ก์ ํธ์บ ํ #ํ๋ก์ ํธ์บ ํํ๊ธฐ #์ ๋ฐ๋ฏธ #์ค๋์ดํผํฉํ ๋ฆฌ #์ ์ง์ฝํฌ๋น #์ธ์ฌ์ด๋์์ #IT๊ฐ๋ฐ์บ ํ #๊ฐ๋ฐ์๋ถํธ์บ ํ #๋ฆฌ์กํธ #react #๋ถํธ์บ ํ #๋ฆฌ์กํธ์บ ํ
- React.js
- App Runner
- ์๊ณ ๋ฆฌ์ฆ
- IT๊ฐ๋ฐ์บ ํ
- ๋ฉ๋ชจ๋ฆฌ
- BFS
- ๊ฐ๋ฐ์๋ถํธ์บ ํ
- ์๋ฐ์คํฌ๋ฆฝํธ
- html
- react-query
- CS
- Algorithm
- ์ค๋ ๋
- ํด์
- ์ ์ง์ฝํฌ๋น
- ip
- ํ๋ก๊ทธ๋๋จธ์ค
- ๋ฆฌ์กํธ
- ์ ๋ฐ๋ฏธ
- typescript
- ํ๋ก์ธ์ค
- ์ธ์ฌ์ด๋์์
- react
- ํ์ ์คํฌ๋ฆฝํธ
- ์ค๋์ดํผํฉํ ๋ฆฌ
- ๋คํธ์ํฌ
- cs #๋คํธ์ํฌ
- javascript
- Today
- Total
Bin's Blog
์ค๋์ React ๋ณธ๋ฌธ
1๏ธโฃ AJAX๋?
๐ Asynchronous JavaScript and XML(๊ณต์ ๊ฐ๋ฅํ ๋ฐฉ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ํ๊ณ ์ง์ ํ ์ ์๋ค. )์ ์ฝ์๋ก, ๋ง ๊ทธ๋๋ก JavaScript์ XML์ ์ด์ฉํ ๋น๋๊ธฐ์ ์ ๋ณด ๊ตํ ๊ธฐ๋ฒ์ด๋ค.
๐ ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๋ค.
๐ ์๋ฒ: ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๋ฉด ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด์ฃผ๋ ํ๋ก๊ทธ๋จ
- Ex)์ ํ๋ฒ ์๋ฒ: ๋์์ ์์ฒญํ๋ฉด ์ง์ง ๋ณด๋ด์ฃผ๋ ํ๋ก๊ทธ๋จ
- Ex) ์นํฐ ์์ฒญํ๋ฉด ์ง์ง ๋ณด๋ด์ฃผ๋ ํ๋ก๊ทธ๋จ
๐ ์๋ฒ๊ฐ๋ฐ์ ์ง๋ ์ฝ๋
- ๋๊ฐ comic.naver.com์ผ๋ก ์์ฒญํ๋ฉด ์นํฐ ๋ณด๋ด์ฃผ์ธ์
๐ ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ ๋ ์ผ์ ํ ๊ท๊ฒฉ์ ์์ฑํ์
๐ ๋ฐฉ๋ฒ (GET/POST)
- ๋ฐ์ผ๋ฉด get
- ๋ณด๋ด๋ฉด post
๐ ์๋ฅผ ๋ค์ด ๋ค์ด๋ฒ์นํฐ์๋ฒํํ (comic.naver.com)์ผ๋ก GET์์ฒญ ํ๋ฉด๋๋ค.
๐ ๋ค์ด๋ฒ ๋ธ๋ก๊ทธ์ ๊ธ์ ๋ฐํํ๊ณ ์ถ์ผ๋ฉด (blog.naver.com)์ผ๋ก POST ์์ฒญ
๐ ๋ธ๋ผ์ฐ์ ์์ ์ฃผ์๋ฅผ ์ ๋ ฅํ๋ ๊ณณ์ด GET์์ฒญ ํ๋ ๊ณณ์ด๋ค.
๐ ๊ทธ๋ฌ๋ GET/POST ์์ฒญ์ ์๋ก๊ณ ์นจ์ด ๋๋ค. ๊ทธ๊ฒ ์ซ์ผ๋ฉด AJAX๋ฅผ ์ฌ์ฉํ๋ฉด ์๋ก๊ณ ์นจ ์์ด ๋ฐ์ดํฐ ์ฃผ๊ณ ๋ฐ๊ธฐ ๊ฐ๋ฅ

2๏ธโฃ Ajax ์ต์
๐ XMLHttpRequest, fetch(), Axios๊ฐ ์๋๋ฐ ์ด ์ค์์ Axios๋ฅผ ๊ฐ์ฅ ๋ง์ด ์ด๋ค.
2๏ธโฃ - 1๏ธโฃ Axios ์ฌ์ฉ๋ฒ
๐ npm install axios
๐ import axios from "axios"
๐ ajax ์ด์ฉํ Get์์ฒญ์ ํ์์ axios.get("url").then((result) => { result.๊ฐ์ ธ์ฌ๊ฒ })
๐ ๋ฆฌ์กํธ์์๋ ๊ฑฐ์ ์๋ฒ์ ajax ์ด์ฉํด์ ํต์ ํฉ๋๋ค.
๐ Ajax ์์ฒญ ์คํจํ ๊ฒฝ์ฐ?
- ์ธํฐ๋ท์ด ์๋๊ฑฐ๋, ์๋ฒ๊ฐ ๊บผ์ก๊ฑฐ๋, url ์์ฒญ์ด ์๋ชป๋์ ๋๊ฐ ๋ง๋ค.
- ์คํจํ ๊ฒฝ์ฐ ํน์ ์ฝ๋๋ฅผ ์คํํ๊ณ ์ถ๋ค.
๐ ์์
<button onClick={() => {
axios.get("https://codingapple1.github.io/shop/data2ใ
ใ
.json")
.then((result) => {
console.log(result.data)
})
.catch((error) => {
console.log("์คํจํจ")
})
}}>
๋ฒํผ
</button>
๐ ์๋ฒ๋ก ๋ฐ์ดํฐ ์ ์กํ๋ POST ์์ฒญ
axios.post("/www.naver.com", {name : "Lee"})
๐ ๋์์ ajax ์์ฒญ ์ฌ๋ฌ๊ฐํ๋ ค๋ฉด
Promise.all([ axios.get("/url1"), axios.get("/url2")])
.then(() => {
})
'React.js' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Flux ํจํด (0) | 2023.09.01 |
---|---|
[React.js] ์ค๋์ ๋๋ฒ๊น (0) | 2023.08.01 |
์ค๋์ React (0) | 2023.05.21 |
์ค๋์ React (0) | 2023.05.14 |
์ค๋์ react (0) | 2023.05.12 |