๋งํฌ : https://www.notion.so/2-f9706fef663a4b5ca7c7013a57c1785d
์ ์ธํ๋ ๊ฒ์ ํจ์(function) ๋ฐ์์ ํด์ผํ๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ํจ์๊ฐ ๋๋๋ฉด์ ๊ฐ์ด ์ฌ๋ผ์ง๋ค.
์ด์ ์๋ ๋ธ๋ผ์ฐ์ ์ ์ฝ๋๊ฐ ๋ชจ๋ ๋ฌ๋ผ ํธํ์ฑ์ ๋ฌธ์ ๊ฐ ์๊ฒผ์.
์ด ํธํ์ฑ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด jQuery ์ฌ๋จ์์ ์ ์ฒด ๋ธ๋ผ์ฐ์ ์ฝ๋์ ๋ํ ๋ฉํ ๋ถ์์ ์งํํ์ฌ ๊ฐ์ ๊ธฐ๋ฅ์ด์ง๋ง ๊ฐ๊ธฐ ๋ค๋ฅธ ์ฝ๋์ ๋ํ ํต์ผ ์์
์ ์งํํ์์.
๊ทธ๋ ๊ฒ ํ์ํ ๊ฒ์ด jQery ์ด๋ค. ์ฆ, ๋ฏธ๋ฆฌ ์์ฑ๋ JavaScript๋ฌธ์ธ ๊ฒ(library ์ด๋ค).
import ํ์ง ์์ผ๋ฉด ์ฌ์ฉ ํ ์ ์๋ค.
jQuery๋ฅผ ๋ถ๋ฌ์ค๋ ๋ฌธ <head ๋ด์ ์ฝ์ >
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
CSS์ ๋์ผํ๊ฒ jQuery๋ ํน์ ํ์ง ์์ผ๋ฉด(๊ฐ๋ฆฌํค์ง) ์์ผ๋ฉด ์กฐ์ ํ ์ ์๋ค.
๋ณ์ ์ง์ ์
CSS๋ class
jQuery๋ id
๋ฅผ ์ฌ์ฉํ๋ค.
๐
- ๋ธ๋ผ์ฐ์ ๊ฐ๋ฐ์ ๋ชจ๋์์ id์ ๊ฐ ๊ฐ์ ธ์ฌ ๋,
$('#post-url').val(); : id ๊ฐ์ด post-url์ธ ๊ณณ์ ๊ฐ๋ฆฌํค๊ณ , val()๋ก ๊ฐ์ ๊ฐ์ ธ์จ๋ค. val ์์ ๊ฐ์ ๋ฐ๊พธ๋ฉด ๊ทธ ๊ฐ์ผ๋ก ๋ฐ๊ฟ์ค. val์ input ๋ฐ์ค์๋ง ์ฌ์ฉํ๋ ๊ฒ~!!!- div ๋ณด์ด๊ธฐ / ์จ๊ธฐ๊ธฐ
$('#post-box').hide(); : id ๊ฐ์ด post-box์ธ ๊ณณ์ ๊ฐ๋ฆฌํค๊ณ , hide()๋ก ์๋ณด์ด๊ฒ ํ๋ค.(=css์ display ๊ฐ์ none์ผ๋ก ๋ฐ๊พผ๋ค)
$('#post-box').show(); : show()๋ก ๋ณด์ด๊ฒ ํ๋ค.(=css์ display ๊ฐ์ block์ผ๋ก ๋ฐ๊พผ๋ค)- CSS ๊ด๋ จ
$('#post-box').css(); : css()๊ฐ์ ๊ฐ์ ธ์ค๊ฑฐ๋ ()์์ ์ ํ ๊ฐ์ ๋ฐํํ๋ค. ๋ด์ฉ ์ ๋ ฅ์ ํตํด ๊ธฐ์กด์ ๊ฐ์ ๋ฐ๊พธ๋ ๊ฒ๋ ๊ฐ๋ฅํ๋ค. ('display') ๋ฅผ ์น๋ฉด ํ์ฌ ๋ณด์ด๋์ง ์๋ณด์ด๋์ง์ ๋ํ ๊ฐ์ ๋ฐํํ๋ค. ์ด์ฒ๋ผ .css() ๋ ํ์ฌ ํ๋ฉด์ ๋ณด์ด๋ ๊ฐ์ ๋ฐํํด์ค๋ค.
$('#post-url').text(); : ์ธํ ๋ฐ์ค๊ฐ ์๋ ๊ฒ์ ๊ฐ์ ๊ฐ์ ธ์์ฃผ๊ฑฐ๋ ๋ด์ฉ์ ๋ฐ๊ฟ ์ ์๋ค.
๐ ์ํ์ด๋ผ๊ณ ๊ฐ์
์๋ฒ : ์ํ
ํด๋ผ์ด์ธํธ : ์ํ์ ์ฐพ์์จ ๊ณ ๊ฐ
(๋ญํ๋ฌ ์ค์ จ์ด์? )
API : ์ํ ์ฐฝ๊ตฌ
GET : ์กฐํํ๋ฌ ์์ด์ ๊ณ ๊ฐ
POST : ํฌ์ ๋ฑ ๋ค์ํ ์ ๋ฌด ํ๋ฌ ์์ด์ ๊ณ ๊ฐ
=> ๊ณ ๊ฐ์ ํ์ ์ ๋ฐ๋ผ ๊ฐ์ ธ์์ผ ํ๋๊ฒ / ์ฒ๋ฆฌํด์ผ ํ๋ ๊ฒ / ์ฒ๋ฆฌ ๊ฒฐ๊ณผ๊ฐ ๋ค๋ฆ.
๋นจ๊ฐ์ : ์๋ฒ ์ฃผ์ (์ฐ๋ฆฌ์ํ ์ฉ์ฐ์ง์ )
ํ๋์ : ์ฐฝ๊ตฌ ์ด๋ฆ(API) (์ฐ๋ฆฌ์ํ ์ฉ์ฐ์ง์ ์ ์
์ถ๊ธ ์ฐฝ๊ตฌ)
๋
ธ๋์ : ๊ตฌ๋ถ ๊ธฐ์ค์
๊ฒ์ ์ : ๊ธฐ์ค์ ๋ค๋ก ํด๋ผ์ด์ธํธ๊ฐ ๊ฐ์ง๊ณ ๊ฐ๋ ๋ฐ์ดํฐ (์ฃผ๋ฏผ๋ฑ๋ก, ๋ฒํธ, ๊ณ์ข ๋ด ๊ธ์ก ๋ฑ)
-> ๊ทธ๋ฐ ์ด๋ฐ code ๊ฐ์ ๋๊ฐ ์ ํ๋๊ฐ? ์์ฒญํ๋ ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ๋ฐ๋ ์๋ฒ๊ฐ ๋ฏธ๋ฆฌ ์ฝ์ํ ๊ฒ. code๋ก ๊ฐ์ ธ์ค๋ฉด ๋ด๊ฐ code์ ๋ง๋ ๊ฐ์ ์ค๊ป
๋ธ๋ผ์ฐ์ ์ฃผ์์ฐฝ์ ์ํฐ๋ฅผ ์น๋ ํ์ ์์ฒด๊ฐ GETํ๋ ๊ฒ.
Ajax๋ jquery๋ฅผ importํ ํ์ด์ง์์๋ง ์๋ํ๋ค.
Ajax์ ๋์๋ฐฉ์
์์ฒญ : ๋ธ๋ผ์ฐ์ ๋ ์๋ฒ์ ์ ๋ณด๋ฅผ ์์ฒญํ๋ค. (๋ธ๋ผ์ฐ์ ๋ Ajax์์ฒญ์ ๋ด๋นํ๋ XMLHttpRequest ๋ผ๋ ๊ฐ์ฒด๋ฅผ ๊ตฌํํ๊ณ ์๋ค.)
[ ์๋ฒ์ ๋์ : ์๋ฒ๋ ์๋ต์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋ค. (XML, JSON) ]
์๋ต : ๋ธ๋ผ์ฐ์ ๋ ์ฝํ
์ธ ๋ฅผ ์ฒ๋ฆฌํ์ฌ ํ์ด์ง์ ์ถ๊ฐํ๋ค.
Ajax์ ๊ตฌ์กฐ