๋ฐ์ํ
[Vue] Drag and Drop
๐ก Part 3. Drag & Drop ๋ฉ์๋ ๊ตฌํํ๊ธฐ
- ๋๋๊ทธํ ์์ดํ
์ @dragstart="startDrag($event, item)" ์ถ๊ฐํ๊ธฐ
- startDrag ๋ฉ์๋
// startDrag const startDrag = (event, item) =>{ event.dataTransfer.dropEffect = "move"; event.dataTransfer.effectAllowed = "move"; event.dataTransfer.setData("selectItem", item.content); }โ
- startDrag ๋ฉ์๋
- ๋๋๊ทธ ์์ญ์ @drop="onDrop($event,์์ญ๋ฒํธ)" ์ถ๊ฐํ๊ธฐ
- onDrop ๋ฉ์๋
// ๋๋กญ ๋ถ๋ถ const onDrop = (event, list) => { const selectItem = event.dataTransfer.getData("selectItem"); // ๋๋๊ทธ์ค ๋๋กญํ ์์ดํ var tmp = []; if (list == 1) { // leftList const item = state.rightList.find( (item) => item.content == selectItem ); state.leftList.push(item); // ์ข์ธก ๋ฆฌ์คํธ์ ์ถ๊ฐ๋ฅผ ํด์ฃผ๊ณ state.rightList.forEach((q) => { // ์ฐ์ธก์์๋ ๋นผ์ค๋ค. if (q.content != item.content) tmp.push(q); }); state.rightList = tmp; } else { // right List const item = state.leftList.find( (item) => item.content == selectItem ); state.rightList.push(item); state.leftList.forEach((q) => { if (q.content != item.content) tmp.push(q); }); state.leftList = tmp; } };
- onDrop ๋ฉ์๋
๐ก Part 4. ๋์ ํ์ธํ๊ธฐ
CPDM
choppadontbiteme.tistory.com
๋ฐ์ํ
'Dev > Web' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ AJAX ] Ajax(Asynchronous Javascript And XM (0) | 2021.10.01 |
---|---|
[ CSS ] ๋ก๋ฉ ์คํผ๋ ๋ง๋ค๊ธฐ (0) | 2021.09.21 |
[ CSS ] ํค ํ๋ ์๊ณผ ์ ๋๋ฉ์ด์ ์์ฑ (0) | 2021.09.10 |
[Vue] Drag And Drop ๋๋๊ทธ ์ค ๋๋กญ (1) (0) | 2021.08.18 |
[Front-End] bootstrap&jquery ๋ฒํผ ํด๋ฆญ ์ ์ฃผ์ ํ์ ๋์ฐ๊ธฐ (0) | 2021.03.10 |