์ด ๋ฌธ์ ๋ Firefox ๋ฐ Safari์์ ๋ฐ์ํ์ง ์์ต๋๋ค. ์๋ง๋ Chrome ๋๋ ๊ฐ๋ฅํ Chrome ๊ด๋ จ react-dnd ์ฝ๋(์๋ ๊ฒฝ์ฐ)์ ๊ด๋ จ๋ ๋ฒ๊ทธ์ผ ์ ์์ต๋๋ค.
๋ชจ์๋ฆฌ๊ฐ ๋ฅ๊ทผ ๋๋๊ทธ ๊ฐ๋ฅํ ์์๊ฐ ์๋๋ฐ ๋๋๊ทธํ๋ฉด ์์์ ์ฌ๊ฐํ ๋ชจ์๋ฆฌ๊ฐ ์์์ ํ ๋น๋ ๋ฐฐ๊ฒฝ์๊ณผ ๋ค๋ฅธ ๋ฐ์ ํ์์ผ๋ก ํ์๋ฉ๋๋ค.
๋๋ ๊ทธ๊ฒ์ด ์ฌ๋ผ์ง๊ธฐ๋ฅผ ์ํ๋ฏ๋ก ๋ฅ๊ทผ ๋ชจ์๋ฆฌ๊ฐ ์๋ ์์๋ง ๋ํ๋ฉ๋๋ค.
์ด๊ฒ์ ๋๊ธฐ ์ํด ํ ์ ์๋ ์ผ์ด ์์ต๋๊น? ์ ์ฉ๋ ์ ์๋ ์ ๋ น ์ด๋ฏธ์ง์ ๊ฐ์?
DragPreview์ CustomDragLayer๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๊น? ์ ์ฌ๊ฐํ ๋ชจ์๋ฆฌ๊ฐ ๋ํ๋ฉ๋๋ค.
๋ ๋ฅ๊ทผ ๊ฒ๋ค๊ณผ ํจ๊ป?
์คํฌ๋ฆฐ์ท์ ๋ฌด์จ ์ผ์ด ์ผ์ด๋๋์ง ํ์ธํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
2017๋ 6์ 7์ผ ์์์ผ 00:53 nottoseethesun [email protected]์์ ๋ค์๊ณผ ๊ฐ์ด ์ผ์ต๋๋ค.
๋ชจ์๋ฆฌ๊ฐ ๋ฅ๊ทผ ๋๋๊ทธ ๊ฐ๋ฅํ ์์๊ฐ ์์ผ๋ฉฐ ๋๋๊ทธํ๋ฉด
์์์ ์ ์ฌ๊ฐํ ๋ชจ์๋ฆฌ๋ ๋ค๋ฅธ ๋ฐ์ ํ์์ผ๋ก ํ์๋ฉ๋๋ค.
์์์ ํ ๋น๋ ๋ฐฐ๊ฒฝ์์์.๋๋ ๊ทธ๊ฒ์ด ์ฌ๋ผ์ง๊ณ ์ถ๊ธฐ ๋๋ฌธ์ ๋ฅ๊ทผ ๋ชจ์๋ฆฌ๊ฐ ์๋ ์์๋ง
๋ํ๋๋ค.์ด๊ฒ์ ๋๊ธฐ ์ํด ํ ์ ์๋ ์ผ์ด ์์ต๋๊น? ์ ๋ น๊ณผ ๊ฐ์
์ ์ฉ๋ ์ ์๋ ์ด๋ฏธ์ง๋?โ
์ด ์ค๋ ๋์ ๊ฐ์ ํ๊ธฐ ๋๋ฌธ์ ์ด ๋ฉ์์ง๋ฅผ ๋ฐ๊ณ ์์ต๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/react-dnd/react-dnd/issues/788 ๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AA_31sMofYE49RWrSM0SvEiSJEIK9TOBks5sBacZgaJpZM4NxzBj
.>
๋ฌธ์ ์ธ์ฌ,
๊ฐ๊ฐ
๊ฐ์ฌํฉ๋๋ค. CustomDragLayer
์ฌ์ฉํ์ง ์์ต๋๋ค. ๋ชจ๋ ๊ฒ์ด ํ๋ฒํฉ๋๋ค.
์คํฌ๋ฆฐ์ท์์๋ ๋ถํํ๋ ๋ถ๊ฐ๋ฅํ์ง๋ง ๋ ์ ์ค๋ช ํ ์ ์์ต๋๋ค. draggable์ ๋ชจ์๋ฆฌ๊ฐ ๋ฅ๊ทผ ๋ชจ์๋ฆฌ(ํ ๋๋ฆฌ ๋ฐ๊ฒฝ 10px)๊ฐ ์๋ ๊ฐ ๋ฉด์ด ์ฝ 1์ธ์น์ธ ์ ์ฌ๊ฐํ div์ ๋๋ค. ๋๋๊ทธ ๊ฐ๋ฅ ํญ๋ชฉ์ ๋๋๊ทธํ ๋ ๋ชจ๋ ๋ฉด์์ ์ ์์ผ๋ก ๋ณด์ ๋๋ค(์ฌ์ ํ ๋ฅ๊ทผ ๋ชจ์๋ฆฌ์ ์ ์ ํ ์์์ด ์์). ํ ๊ฐ์ง๋ฅผ ์ ์ธํ๊ณ ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ๋ค ๊ฐ์ ๋ฅ๊ทผ ๋ชจ์๋ฆฌ๊ฐ ๊ฐ๊ฐ ํ์๋ฉ๋๋ค. ๋จ, ๋ฐ์ฌ๋ฆผ๋์ง ์์ ๋ถ๋ถ์ ์์์ ๋๋๊ทธ ๊ฐ๋ฅ์ ์์ ์์(๋๋๊ทธ๋ฅผ ๊ฐ์ ธ์จ ์์ ์์)์ ์์์ ๋๋ค. ๋ฐ๋ผ์ ๊ฐ ๋ฅ๊ทผ ๋ชจ์๋ฆฌ๋ ๋ถํํ๊ฒ๋ Chrome ๋ธ๋ผ์ฐ์ ์์๋ง(Firefox ๋๋ Safari๊ฐ ์๋) ๋ฅ๊ทผ ๋ชจ์๋ฆฌ๊ฐ ์๋ ๊ฒ์ฒ๋ผ div์ ๋๋จธ์ง ํ๋ฉด ์์ญ์ธ ์์ "๋ชจ์"์ ํจ๊ป ์ ๊ณต๋ฉ๋๋ค.
Chrome์ด div๋ฅผ ์ค๋
์ทํ๊ณ ๋ฉ๋ชจ๋ฆฌ์ ์ ์งํ๋ ๊ฒ๊ณผ ๊ฑฐ์ ๊ฐ์ต๋๋ค. ์ด ์ ์ ์ค์ ๋ก endDrag
๋ฌธ์ ๊ฐ ์์๊ณ ๋ฐ์คํฌํ์์ ์น ๋ธ๋ผ์ฐ์ ์ธ๋ถ๋ฅผ ํด๋ฆญํ์ ๋ ์ค๋ช
๋ ๋๋ก ๋๋๊ทธ ๊ฐ๋ฅํ ๊ฒ์ ๋ณผ ์ ์์์ต๋๋ค.
WebkitTapHighlightColor
(React identifier format) ์ transparent
์ค์ ํ๋ ค๊ณ ์๋ํ์ง๋ง ํด๊ฒฐ๋์ง ์์์ต๋๋ค.
์ด์ํ๋ค. CustomPreview๋ฅผ ์ฌ์ฉํ์ง ์๋ ๊ฒฝ์ฐ ์ ํํ ๋์ผํฉ๋๋ค.
๋๋๊ทธ๋ฅผ ์์ํ๊ธฐ ์ ์ ๋ ๋๋ง๋ ๊ฒ์ ๋ฏธ๋ฆฌ๋ณด๊ธฐ์ฌ์ผ ํฉ๋๋ค.
์์์ ๋ธ๋ผ์ฐ์ ์ค๋
์ท์ ๋ฐ๋ผ ๋ค๋ฆ)
์ ์ค๋ช
๋ ๊ฒ๋ณด๋ค ๋ ๋ง์ ์์
์ ์ํํ๊ณ ์๋์ง ํ์ธํ ์ ์์ต๋๊น?
์ด ์ -
http://react-dnd.github.io/react-dnd/examples-drag-around-naive.html ?
์ด ๋ฆฌํฌ์งํ ๋ฆฌ๋ฅผ ๋ณต์ ํ๊ณ ์ด ์์ ์ borderRadius๋ฅผ ์ถ๊ฐํ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํ์๋ฉ๋๋ค.
๊ทธ๊ฒ์ ์๋ฒฝํ๊ฒ ์ ์๋ํฉ๋๋ค!
2017๋ 6์ 7์ผ ์์์ผ 09:19 nottoseethesun [email protected]์์ ๋ค์๊ณผ ๊ฐ์ด ์ผ์ต๋๋ค.
๊ฐ์ฌํฉ๋๋ค. CustomDragLayer๋ฅผ ์ฌ์ฉํ์ง ์์ต๋๋ค. ๋ชจ๋ ๊ฒ์ด ํ๋ฒํฉ๋๋ค.
์คํฌ๋ฆฐ์ท์์๋ ๋ถํํ๋ ๋ถ๊ฐ๋ฅํ์ง๋ง ์ค๋ช ํ ์ ์์ต๋๋ค.
๋ ๋์: draggable์ ๊ฐ ๋ฉด์ด ์ฝ 1์ธ์น์ธ ์ ์ฌ๊ฐํ div์ ๋๋ค.
๋ฅ๊ทผ ๋ชจ์๋ฆฌ(ํ ๋๋ฆฌ ๋ฐ๊ฒฝ 10px). ๋๋๊ทธ ๊ฐ๋ฅ, ๋๋๊ทธํ๋ฉด ๋ชจ์
๋ชจ๋ ๋ฉด์์ ์ ์(์ฌ์ ํ ๋ฅ๊ทผ ๋ชจ์๋ฆฌ์ ์ ์ ํ ์์์ด ์์)
ํ ๊ฐ์ง๋ฅผ ์ ์ธํ๊ณ : 4๊ฐ์ ๋ฅ๊ทผ ๋ชจ์๋ฆฌ๊ฐ ๊ฐ๊ฐ ๋ค์๊ณผ ๊ฐ์ด ๋ํ๋ฉ๋๋ค.
์์์ ํ ๋๋ฆฌ ๋ฐ๊ฒฝ์ด ๋ฐ์ฌ๋ฆผ๋์ง ์๋ ๊ฒฝ์ฐ์ ๋ง์ฐฌ๊ฐ์ง๋ก
๋ฐ์ฌ๋ฆผ๋์ง ์์ ๋ถ๋ถ์ ์์์ด ๋ถ๋ชจ์ ์์์ด๋ผ๋ ์ ์ ์ ์ธํ๊ณ
draggable์ ์์(๋์ด์จ ๋ถ๋ชจ ์์). ๊ทธ๋์
๊ฐ ๋ฅ๊ทผ ๋ชจ์๋ฆฌ๋ ๋ถํํ๊ฒ๋ Chrome ๋ธ๋ผ์ฐ์ ์์๋ง ๋๋ฐ๋ฉ๋๋ค.
Firefox ๋๋ Safari), ํ๋ฉด์ ๋๋จธ์ง ๋ถ๋ถ์ธ ์์ "๋ชจ์"์ ํจ๊ป
๋ฅ๊ทผ ๋ชจ์๋ฆฌ๊ฐ ์๋ div์ ์์ญ์ ๋๋ค.Chrome์ด div์ ์ค๋ ์ท์ ์์ฑํ๊ณ ์ ์ฅํ๋ ๊ฒ๊ณผ ๊ฑฐ์ ๊ฐ์ต๋๋ค.
๋ฉ๋ชจ๋ฆฌ. ์ด ์ด์ ์๋ ์ค์ ๋ก endDrag์ ๋ฌธ์ ๊ฐ ์์๊ณ
๋ฐํ ํ๋ฉด์์ ์น ๋ธ๋ผ์ฐ์ ๋ฐ์ ํด๋ฆญํ๋๋ฐ
์ค๋ช ๋ ๋๋ก ๋๋๊ทธํ ์ ์์ต๋๋ค.โ
๋น์ ์ด ๋๊ธ์ ๋ฌ์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ฐ๋ ๊ฒ์ ๋๋ค.์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/react-dnd/react-dnd/issues/788#issuecomment-306678795 ,
๋๋ ์ค๋ ๋ ์์๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AA_31vIjJk8QhGycVd78dYB1EWa_El_nks5sBh3igaJpZM4NxzBj
.>
๋ฌธ์ ์ธ์ฌ,
๊ฐ๊ฐ
๊ฐ์ฌํฉ๋๋ค. ๋๋ ๊ทธ ์์์ border-radius
๋ฅผ ์๋ํ๊ณ ์ค์ ๋ก ๋น์ ์ด ์ณ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ฌ๋ฐ๋ฅด๊ฒ ๋ณด์ด๋ ์ด์ ๋ ์ ์ฒด ์์
์์ญ์ด ๋์ผํ ๋ฐฐ๊ฒฝ์์ด๊ธฐ ๋๋ฌธ์
๋๋ค. Chrome์ html ์์ ๊ธฐ๋ณธ ๊ณ ์คํธ ์ด๋ฏธ์ง๋ฅผ ๋ค๋ฅธ ๋ฐฐ๊ฒฝ์์ผ๋ก ๋๋๊ทธํ๋ฉด ํด๋น ๋ชจ์๋ฆฌ๊ฐ ํ์๋ฉ๋๋ค. ์ ๊ฒฝ์ฐ์๋ ๊ทธ๋ฐ ์ํฉ์ด ์์ต๋๋ค. ๊ณ ์คํธ ์ด๋ฏธ์ง๋ฅผ ์ง์ ํ์ฌ ์ฑ๊ณต์ ์ผ๋ก ํด๊ฒฐํ ์ ์์ต๋๋ค.
์ด ๊ฐ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ต๋๋ค. ๊ถ๊ทน์ ์ผ๋ก ๋๋๊ทธ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ก ์ํ๋ ๋
ธ๋์ transform: 'translate(0, 0)'
๋ฅผ ์ถ๊ฐํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค. ์ด ํ์ด์ง์์ ๋ช ๊ฐ์ง ํต์ฐฐ๋ ฅ์ ์ป์์ต๋๋ค. https://kryogenix.org/code/browser/custom-drag-image.html ๋ชจ์๋ฆฌ๊ฐ ์๋ ์์น์ ์ฌ๋ผ์ง ์์น์ ๋ํ ์์ ๋ฅผ ๋ณด์ฌ์ค๋๋ค.
@douweknook ๊ฐ์ฌํฉ๋๋ค. ํด๊ฒฐ์ฑ ์ ์ฐพ๋ ๋ฐ ์๋นํ ์๊ฐ์ด ๊ฑธ๋ ธ์ต๋๋ค.
@douweknook ๋ฉ์ง ์๋ฃจ์ !
๊ฐ๋จํ CSS ๊ตฌํ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
.sortable-chosen {
transform: translate(0, 0);
}
์คํ์ผ์ด ์ ์ญ์ ์ผ๋ก ์ ์ฉ๋์ง ์๋๋ก .sortable-chosen์ ์ ๋ ฌ ๊ฐ๋ฅํ ์์ ํด๋์ค์ ์ฐ๊ฒฐํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์ ๋ ฌ ๊ฐ๋ฅํ ์์ ํด๋์ค๊ฐ "item"์ธ ๊ฒฝ์ฐ ๋์ .item.sortable-chosen์ ์ฌ์ฉํ์ญ์์ค!
@douweknook YAY....... ๊ฐ์ฌํฉ๋๋ค. ์์ ์๋ฐ์คํฌ๋ฆฝํธ ํฑํฌ์์๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค.
@douweknook ๋น์ ์ ์ ์ฌ์ด์ ํ์์ ๋๋ค. ์ด๊ฒ์ ๊ฒฝ๊ณ ๋ฐ๊ฒฝ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ํจ๊ณผ๊ฐ ์์์ง๋ง ์ฌ์ ํ ์์ ๊ทธ๋ฆผ์๊ฐ ์๋ฆฝ๋๋ค. ์ฐธ๊ณ : ์ด๊ฒ์ Firefox์์ ์ ๋๋ก ์๋ํฉ๋๋ค.
๊ด์ฌ ์๋ ์ฌ๋์ ์ํด ๋ณ๋์ ๋ฌธ์ ๋ฅผ ๋ง๋ค์์ต๋๋ค. https://github.com/react-dnd/react-dnd/issues/2762
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์ด ๊ฐ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ต๋๋ค. ๊ถ๊ทน์ ์ผ๋ก ๋๋๊ทธ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ก ์ํ๋ ๋ ธ๋์
transform: 'translate(0, 0)'
๋ฅผ ์ถ๊ฐํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค. ์ด ํ์ด์ง์์ ๋ช ๊ฐ์ง ํต์ฐฐ๋ ฅ์ ์ป์์ต๋๋ค. https://kryogenix.org/code/browser/custom-drag-image.html ๋ชจ์๋ฆฌ๊ฐ ์๋ ์์น์ ์ฌ๋ผ์ง ์์น์ ๋ํ ์์ ๋ฅผ ๋ณด์ฌ์ค๋๋ค.