React-dnd: 쀑첩 된 λ“œλž˜κ·Έ μ†ŒμŠ€ μˆ˜μ • 및 canDragμ—μ„œ μž‘λ™ν•˜λŠ” 방식

에 λ§Œλ“  2015λ…„ 02μ›” 27일  Β·  4μ½”λ©˜νŠΈ  Β·  좜처: react-dnd/react-dnd

이것은 # 87κ³Ό 관련이 μžˆμ§€λ§Œ μ’€ 더 κΈ°μˆ μ μž…λ‹ˆλ‹€. ν˜„μž¬ 쀑첩 된 λ“œλž˜κ·Έ μ†ŒμŠ€κ°€ ν•¨κ»˜ ν™œμ„±ν™”λ©λ‹ˆλ‹€. 이것은 맀우 잘λͺ»λœ ν–‰λ™μž…λ‹ˆλ‹€. μžμ‹ λ“œλž˜κ·Έ μ†ŒμŠ€λŠ” _ 항상 _ λΆ€λͺ¨κ°€ ν™œμ„±ν™”λ˜μ§€ μ•Šλ„λ‘ν•΄μ•Όν•©λ‹ˆλ‹€.

κ·ΈλŸ¬λ‚˜ HTML5 λ°±μ—”λ“œμ—μ„œ λ³΄μ΄λŠ” κ²ƒμ²˜λŸΌ κ°„λ‹¨ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

e.stopPropagation() 을 dragstart ν•Έλ“€λŸ¬μ— μΆ”κ°€ν•˜λ €κ³ ν–ˆμ§€λ§Œ λ‹€λ₯Έ λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€. List 및 Card λͺ¨λ‘ λ“œλž˜κ·Έ μ†ŒμŠ€μ΄κ³  Card λŠ” List 내뢀에 μžˆλ‹€κ³  κ°€μ •ν•©λ‹ˆλ‹€. Card 에 canDrag(): false 이 μžˆλ‹€κ³  κ°€μ •ν•©λ‹ˆλ‹€. 이 경우 stopPropagation() λ₯Ό 호좜 ν•  수 μ—†μŠ΅λ‹ˆλ‹€.이 경우 μ΄λ²€νŠΈκ°€ μƒμœ„μ— λ„λ‹¬ν•˜μ§€ λͺ»ν•˜κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€.

μ’‹μŠ΅λ‹ˆλ‹€. λŒ€μ‹  dragstart ν•Έλ“€λŸ¬μ— if (DragOperationStore.isDragging()) return; λ₯Ό μΆ”κ°€ν•˜κ² μŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ 또 λ‹€λ₯Έ λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€. μ΄λ²€νŠΈκ°€ λΆ€λͺ¨μ— 도달 ν–ˆλ”λΌλ„ μ‹€μ œλ‘œ λ“œλž˜κ·Έν•˜λ©΄ λΈŒλΌμš°μ €κ°€ μ›λž˜ (μžμ‹) λŒ€μƒμ„ λ“œλž˜κ·Έ 미리보기둜 μ‚¬μš©ν•©λ‹ˆλ‹€.

이것은 beginDrag μ§€μ •λ˜μ§€ μ•Šμ€ 경우 this.getDOMNode() λ₯Ό dragPreview 둜 λͺ…μ‹œ 적으둜 μ‚¬μš©ν•˜μ—¬ ν•΄κ²°ν•  수 μžˆμœΌλ―€λ‘œ λ“œλž˜κ·Έ 미리보기가 ν˜„μž¬ λŒ€μƒμ΄λ˜λ„λ‘ 보μž₯λ©λ‹ˆλ‹€. λ‚˜λŠ” 아직 그것을 μ‹œλ„ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. μ–΄λŠ μͺ½μ΄λ“ , 이것은 λ³΅μž‘ν•œ 문제처럼 보이지 μ•ŠμœΌλ©° μž‘μ„ 수 μžˆμŠ΅λ‹ˆλ‹€!

bug up for grabs

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

canDrag ν•¨μˆ˜κ°€ false λ°˜ν™˜ ν•  λ•Œ λΆ€λͺ¨ ν˜ΈμΆœμ„ μ€‘μ§€ν•˜λŠ” μ†”λ£¨μ…˜μ΄ μžˆμŠ΅λ‹ˆκΉŒ?

λͺ¨λ“  4 λŒ“κΈ€

ν™•μ‹€νžˆ μš°λ¦¬λŠ” dragPreview에 λŒ€ν•œ μ œμ•½μ΄ ν•„μš”ν•©λ‹ˆλ‹€

λ¬΄μ—‡μ²˜λŸΌ?

0.9.2μ—μ„œ μˆ˜μ •λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
라이브 데λͺ¨ : http://gaearon.github.io/react-dnd/#/nesting -sources

canDrag ν•¨μˆ˜κ°€ false λ°˜ν™˜ ν•  λ•Œ λΆ€λͺ¨ ν˜ΈμΆœμ„ μ€‘μ§€ν•˜λŠ” μ†”λ£¨μ…˜μ΄ μžˆμŠ΅λ‹ˆκΉŒ?

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰