250x250
Recent Posts
Recent Comments
Link
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
Tags
- ์นด์นด์ค
- ๊ณผ์ ํ ์คํธ
- ๋๋๊ทธ ์ด๋ฒคํธ
- Node.js
- JavaScript
- ๋ฆฌ๋์ค ํดํท
- ๋ถ์คํธ์บ ํ์น๋ชจ๋ฐ์ผ
- ์ฝ๋ฉํ ์คํธ
- ๋ฐฑ์ค
- ๋ธ๋ฃจํธํฌ์ค
- js
- icecandidate
- TypeScript
- ๋์ ๊ณํ๋ฒ
- Redux toolkit
- ์ด๋ฏธ์ง ์์
- ์๊ณ ๋ฆฌ์ฆ
- ์๋ฐฉํฅ ์ฐ๊ฒฐ ๋ฆฌ์คํธ
- ์ด๋ถํ์
- ๋ถ์คํธ์ปจํผ๋ฐ์ค
- ์ฝ๋ ํฌ๋ฉง
- ์๋ฐ์คํฌ๋ฆฝํธ
- ์ฝํ
- React
- router v6
- ํ๋ก๊ทธ๋๋จธ์ค
- svgํ์ผ ๋ค๋ฃจ๊ธฐ
- ์นด์นด์ค์ฑ์ฉ
- DP
- custom hook
Archives
- Today
- Total
๐ฅ dev-ruby
[HTML/JS] datasetํ์ฉํ๊ธฐ (data-*) ๋ณธ๋ฌธ
728x90
๋ฐ์ํ
SMALL
์ด๋ Element์๋ data-๋ก ์์ํ๋ ์์ฑ์ ์ฌ์ฉํ ์ ์๋ค. ํ๋ฉด์๋ ๋ ๋๋ง ๋์ง ์๊ฒ ์ ๋ณด๋ฅผ ์๋ฆฌ๋จผํธ์ ๋ด์๋์ ์ ์๋ค.
์ฌ์ฉ๋ฒ
<div
class="item"
data-node-id="1"
data-columns="3">
...
</div>
Javascript์์ ์ ๊ทผํ๊ธฐ
์๋ฐ์คํฌ๋ฆฝํธ์์ dataset๊ฐ์ฒด๋ฅผ ํตํด์ data์์ฑ์ ๊ฐ์ ธ์ฌ ์ ์๋ค.
์ด๋ ์ ๋์ฌ์ธ data-๊ฐ ์ ๊ฑฐ๋๊ณ , ๋ชจ๋ ๋๋ฌธ์๋ ์๋ฌธ์๋ก ๋ณํ๋๋ค. ๊ทธ๋ฆฌ๊ณ data-๋ค์์ ์ค๋ ์์ฑ๋ช
์ -(dash)๋ฅผ ์ ๊ฑฐํ๊ณ camelCase๋ก ๋ณํ๋๋ค.
์๋ฅผ ๋ค๋ฉด, data-node-id -> nodeId ๋ก ๋ณํ.
๋ฐ๋ผ์, ์๋์ฒ๋ผ ์ฌ์ฉํ ์ ์๋ค.
const { nodeId } = e.target.dataset;
e.target.dataset.nodeId;
e.target.dataset['nodeId'];
in ์ฐ์ฐ์๋ก ํด๋น ์์ฑ์ด ์กด์ฌํ๋์ง ํ์ธํ ์๋ ์๋ค.
'nodeId' in e.target.dataset
728x90
๋ฐ์ํ
LIST