<p>рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-dnd рдбреНрд░реИрдЧ / рдбреНрд░реЙрдк рдЕрдкрд▓реЛрдб рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░рддреА рд╣реИ</p>

рдХреЛ рдирд┐рд░реНрдорд┐рдд 12 рдордИ 2016  ┬╖  26рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: react-dnd/react-dnd

рдореБрдЭреЗ рдПрдХ рдХрд╕реНрдЯрдо-рдирд┐рд░реНрдорд┐рдд рдбреНрд░реЙрдкрдЬрд╝реЛрди рдШрдЯрдХ рдорд┐рд▓рд╛ рд╣реИ рдЬрд╣рд╛рдВ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЙрдиреНрд╣реЗрдВ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЦреАрдВрдЪ / рдЫреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд░рд┐рдПрдХреНрд╢рди-рдбреИрдВрдб рдЗрд╕рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░ рд░рд╣рд╛ рд╣реИред рдХрднреА-рдХрднреА рдбреНрд░реЙрдкрдЬрд╝реЛрди рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЦреАрдВрдЪрдХрд░, рдЕрдиреНрдп рдмрд╛рд░, рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ ( onDrop рдирд┐рдХрд╛рд▓ рдирд╣реАрдВ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред рдХреЛрдИ рд╕реБрдЭрд╛рд╡?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдпрд╣ рдореБрджреНрджрд╛ рд╣реИ: https://github.com/react-dnd/react-dnd-html5-backend/blob/85fc956c58a5d1a9fde2fca3c7fca9f7a7c87df/src/HTML5Backend.js#L452

рдХреЛрдб рдХреА рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░, "рдПрдХ рдЕрдЪреНрдЫрд╛ рдХрд░реНрд╕рд░ рди рджрд┐рдЦрд╛рдПрдВ", рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ e.dataTransfer.dropEffect рдХреЛ рдХреЗрд╡рд▓ рдкреНрд░рджрд░реНрд╢рди рд╕рдВрдкрддреНрддрд┐ рдорд╛рдирддрд╛ рд╣реИред рд▓реЗрдХрд┐рди, dropEffect рдХреЛ none рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рдЫреЛрдбрд╝рдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрддрд╛ рд╣реИред рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдЗрд╕реЗ move , copy , рдпрд╛ link рдХрд╛рдо рдХрд░рдирд╛ рдареАрдХ рд╣реИред рдпрд╣ Chrome 55.0.2 рдореЗрдВ рд╣реИред

рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рднреА рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмрд╛рд╣рд░ рдЗрд╕реЗ рджреЛрд╣рд░рд╛ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВрдиреЗ рдПрдХ рдлрд┐рдбреЗрд▓ рдмрдирд╛рдпрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЕрд▓рдЧ рдХрд░рддрд╛ рд╣реИ: https://jsfiddle.net/ypr6os00/8/

DropEffect рдХреЗ рд▓рд┐рдП MDN рд▓реЗрдЦ рд╕реЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ effectAllowed рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд╣реИ, рдЬрдмрдХрд┐ dropEffect рдкреНрд░реЗрдЬреЗрдВрдЯреЗрд╢рдирд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП ред рдлрд┐рдбреЗрд▓ рдЦреБрдж рдХреЗ рд▓рд┐рдП рдмреЛрд▓рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ ...

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдпрд╣ https://github.com/gaearon/react-dnd-html5-backend/sues/25 рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИ

рд╕рднреА 26 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореБрдЭреЗ рд╡рд┐рдкрд░реАрдд рд╕рдорд╕реНрдпрд╛ рдереАред рдбреНрд░реЙрдкрдбреЛрдЬрд╝рди рдХреЗ рд╕рд╛рде HTML5 рдмреИрдХрдПрдВрдб рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдХрд░рдирд╛ рдерд╛:

beginDrag(props) {
  Dropzone.instances[0].disable() 

рддрдерд╛

endDrag(props, monitor, component) {
  Dropzone.instances[0].enable()

рдореЗрд░рд╛ рдбреНрд░реЙрдкрдЬрд╝реЛрди рд╢рд░реАрд░ рдкрд░ рдЪрдврд╝рд╛ рд╣реБрдЖ рд╣реИ рдФрд░ рдЖрдк рдЗрд╕реЗ рдорд╛рдЙрдВрдЯ рдХрд░рдиреЗ рдХреЗ рдХреНрд░рдо рд╕реЗ рдЦреЗрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдмреЙрдбреА-рд╡рд╛рдЗрдб рдмрдирд╛рдиреЗ рдФрд░ рдлрд┐рд░ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдлрд╝рд╛рдЗрд▓ рдбреНрд░реЙрдк рдХрд░рдиреЗ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░рдирд╛ рдЕрдЧрд░ рдЖрдкрдХреЗ рд▓рд┐рдП рдХреБрдЫ рдФрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдореИрдВ рдПрдХ рдРрд╕реЗ рдореБрджреНрджреЗ рдкрд░ рднреА рднрд╛рдЧ рдЧрдпрд╛, рдЬрд╣рд╛рдВ рдбреНрд░реИрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдЖрдЗрдЯрдо рдореЗрдВ <input> , рдФрд░ рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕рдХреЗ рдЕрдВрджрд░ / рдбреНрд░рдЧреНрд╕ рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдЖрдЗрдЯрдо рдХреЛ рдбреНрд░рдЧ рдХрд░ рджреЗрддрд╛ рд╣реИред рдпрджрд┐ рдЗрдирдкреБрдЯ рдкрд░ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдП рддреЛ рдореИрдВ рд╢рд╛рдпрдж false canDrag рд╡рд╛рдкрд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдФрд░ рдпрд╣реА рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╣рд╛рд▓рд╛рдВрдХрд┐ HTML рдЦреАрдВрдЪреЗрдВ / рдбреНрд░реЙрдк рдЕрдкрд▓реЛрдб рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХрд╛ рдкрддрд╛ рдирд╣реАрдВ рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдпрд╣ рдкреВрд░реЗ рд▓реЗрдЖрдЙрдЯ рдкрд░ рд╕рдХреНрд╖рдо рд╣реИред @ рдмреЗрдпрд░рд┐рдпрди , рд╡рд┐рдЪрд╛рд░?

@ffxsam рдХреНрдпрд╛ рдпрд╣ рдЕрднреА рднреА рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рдореБрджреНрджрд╛ рд╣реИ?

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ред рдореБрдЭреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рдХрд╛рд░рдг рдЗрд╕реЗ рдЕрдирдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛ рдирд╣реАрдВ рд╕рдХрддрд╛ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЕрднреА рднреА рдПрдХ рдореБрджреНрджрд╛ рд╣реИ - рдХреНрд╖рдорд╛ рдХрд░реЗрдВ! рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдирдорд╕реНрддреЗ, рдореИрдВ рдмрд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ, рдореИрдВ рдПрдХ рдореБрджреНрджреЗ рдХреЛ рдЦреЛрд▓рдиреЗ рд╡рд╛рд▓рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЦреБрд▓рд╛ рд╣реИред
рддреЛ рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЬрд╣рд╛рдБ рднреА рдЖрдк ReactDnD рдХреЛ рдЗрдВрд╕реНрдЯреЗрдВрдЯ рдХрд░рддреЗ рд╣реИрдВ, рд╡рд╣рд╛рдВ рдкрд░ рджреЗрд╢реА рдСрдирдбреНрд░реЙрдк рдЗрд╡реЗрдВрдЯ рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИред
рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИ, рдкреВрд░рд╛ рд╢рд░реАрд░ рдПрдХ 'рдбреНрд░реЙрдкрдЬрд╝реЛрди' рд╣реИ рдЬреЛ рд╣рдореЗрд╢рд╛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдВрджрд░ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрдирддрд╛ рд╣реИ, рдореИрдВ рдмрд╕ рдЙрд╕ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рдореВрд▓ рдШрдЯрдирд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдмрд╣реБрдд рд╕рд░рд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╣реИ рдФрд░ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдЖрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рдореЗрдВ рд░рд┐рдПрдХреНрдЯрдбреАрдбреАрдбреА рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рдбреНрд░реЙрдк рдИрд╡реЗрдВрдЯ рдХреЛ рдирд┐рдХрд╛рд▓ рдирд╣реАрдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдордЬреЗрджрд╛рд░ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдпрд╣ рдСрдирдЧреНрд░реИрдЧрдиреЗрдЯ рдпрд╛ рдСрдирдбреНрд░реИрдЧрд╕реНрдЯрд╛рд░реНрдЯ рдШрдЯрдирд╛ рдХреЛ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдХреЛрдИ рд╕реБрд░рд╛рдЧ @kesne @gaearon ? рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ ReactDnD рдХреА рд╕реНрдерд╛рдкрдирд╛ рд░рджреНрдж рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛, рдпрд╣ рд░рд┐рдПрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдЕрдм рддрдХ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдбреНрд░реИрдЧ рдПрдВрдб рдбреНрд░реЙрдк рдирд┐рд░реНрднрд░рддрд╛ рд╣реИред

@kesne @gaearon рдореИрдВ рд╣реВрдВ ред рдореИрдВ рдореВрд▓ рд░реВрдк рд╕реЗ Wordpress рдФрд░ Wordpress рдореАрдбрд┐рдпрд╛ рдЕрдкрд▓реЛрдбрд░ рдХреЗ рд╕рд╛рде DND рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ рдлрд╝рд╛рдЗрд▓ рдЕрдкрд▓реЛрдб рдХреЗ рд▓рд┐рдП рджреЗрд╢реА рдбреНрд░реЙрдк рдШрдЯрдирд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдСрдирдбреНрд░реЙрдк рдХреЙрд▓рдмреИрдХ рдХреЛ рдирд┐рдХрд╛рд▓ рдирд╣реАрдВ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреЗрд╡рд▓ рдЬрдм рдРрдк рдореЗрдВ ReactDND рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред Reactdnd рдбреНрд░реЙрдк рд▓рдХреНрд╖реНрдп рдХреЛ рд╣рдЯрд╛рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЬрд╛рддреА рд╣реИред рдореИрдВрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рдХрдИ рдорд╣реАрдиреЗ рдмрд┐рддрд╛рдП рд╣реИрдВ рдФрд░ рд░рд┐рдПрдХреНрдЯрдб рдЗрд╕рдХрд╛ рдПрдХ рдореБрдЦреНрдп рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕ рдореЛрдбрд╝ рдкрд░ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдЬрд╛рдиреЗ рдХрд╛ рдЬреЛрдЦрд┐рдо рдирд╣реАрдВ рдЙрдард╛ рд╕рдХрддрд╛ред рдЗрд╕ рдзрд╛рдЧреЗ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рдореЗрдВ рдЗрд╕реА рддрд░рд╣ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рд╕реЗ, рдореИрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ рдХрд╛рдлреА рд╕рдордп рд╕реЗ рд╣реИред рдЗрд╕ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рд╕рдорд╛рдзрд╛рди рдХреА рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рдПрдЧреАред

рд╣рд╛рдБ, рдпрд╣ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рджреЗрд╢реА рдФрд░ рдХрд╕реНрдЯрдо dnd рддрддреНрд╡реЛрдВ рдХреЗ рдмреАрдЪ рдХреБрдЫ рдЦрд░рд╛рдм рд╕рд╣рднрд╛рдЧрд┐рддрд╛ рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЯрди рдХрд╛ рд╕рдордп рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдпрд╣ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рджреЗрдЦреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкрд╣рд▓реЗ рдореБрджреНрджреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реЛрдЧрд╛ред

рдпрджрд┐ рдЖрдк рд╕рдХреНрд╖рдо рд╣реИрдВ, рддреЛ рдкреНрд░рдЬрдирди рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рдиреНрдпреВрдирддрдо рд░реЗрдкреЛ рд╕реЗрдЯрдЕрдк рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╕реБрдкрд░ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ рддрд╛рдХрд┐ рд╣рдо рдЗрд╕реЗ рд╕рдВрднрд╛рд▓рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдЬрд╛рдирдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХреЗрдВред

@kesne рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж рдФрд░ рдпрд╣ рдЬрд╛рдирдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЧреМрд░ рдХрд░реЗрдВрдЧреЗред рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рдЬреАрд╡рдВрдд рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдКрдВрдЧрд╛ рдФрд░ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рдпрд╣рд╛рдВ рдПрдХ рд▓рд┐рдВрдХ рдкреЛрд╕реНрдЯ рдХрд░реВрдВрдЧрд╛ред
рдЗрд╕ рдмреАрдЪ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рд╣реИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЕрднреА рддрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрднреА рдХреЗ рд▓рд┐рдП рдЪрд╛рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрддрд╛ рд╣реИред рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ HTML5Backend рдореЗрдВ рд╕реЗрдЯрдЕрдк () рдФрд░ рдЯрд┐рдпрд░рдбрд╛рдЙрди () рдлрд╝рдВрдХреНрд╢рди рдереЗ, рдЬреЛ рд╕рднреА рдИрд╡реЗрдВрдЯ рд╢реНрд░реЛрддрд╛рдУрдВ рдХреЛ рд╡рд┐рдВрдбреЛ рдПрд▓рд┐рдореЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рдХрд░ рд░рд╣реЗ рдереЗред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╡рд░реНрдбрдкреНрд░реЗрд╕ рдлрд╛рдЗрд▓ рдЕрдкрд▓реЛрдбрд░ рдПрдХ рдореЛрдбрд▓ рдмреЙрдХреНрд╕ рд╣реИ, рдЬреЛ рдкреВрд░реА рд╕реНрдХреНрд░реАрди рдХреЛ рдШреЗрд░реЗ рд░рд╣рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рдореЛрдбрд▓ рдХреЗ рдЦреБрд▓реЗ рд╣реЛрдиреЗ рдкрд░ рдХреЛрдИ рднреА рд░рд┐рдПрдХреНрдЯрдбреАрдПрдирдбреА рддрддреНрд╡ рдирд╣реАрдВ рдЦреАрдВрдЪреЗ рдпрд╛ рдЧрд┐рд░рд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП рдореЛрдбрд▓ рд╡рд┐рдВрдбреЛ рдХреЗ рдУрдкрди рдЗрд╡реЗрдВрдЯ рдХреЗ рджреМрд░рд╛рди рдореИрдВ рдмреИрдХрдПрдВрдб рдХреЗ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди (рдбреНрд░реИрдЧрдбреНрд░реЙрдкрдореИрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрд▓рдмреНрдз) рдкрд░ рдЯрд░реНрдбрдбрд╛рдЙрди () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдореЛрдбрд▓ рдХреЗ рдмрдВрдж рд╣реЛрдиреЗ рдХреЗ рджреМрд░рд╛рди, рдореИрдВ рд╕реЗрдЯрдЕрдк () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реВрдВред рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рдиреЗ рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЖрдк рдореБрдЭреЗ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдХреЙрд▓ рдлрд╛рдбрд╝ рдФрд░ рд╕реЗрдЯрдЕрдк рдлрд╝рдВрдХреНрд╢рдВрд╕ рдлрд┐рд░ рд╕реЗ рдореМрдЬреВрджрд╛ рдпрд╛ рдирдП рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдШрдЯрдХреЛрдВ рдкрд░ ReactDND рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддреЗ рд╣реИрдВ?

рдпрд╣ рдореБрджреНрджрд╛ рд╣реИ: https://github.com/react-dnd/react-dnd-html5-backend/blob/85fc956c58a5d1a9fde2fca3c7fca9f7a7c87df/src/HTML5Backend.js#L452

рдХреЛрдб рдХреА рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░, "рдПрдХ рдЕрдЪреНрдЫрд╛ рдХрд░реНрд╕рд░ рди рджрд┐рдЦрд╛рдПрдВ", рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ e.dataTransfer.dropEffect рдХреЛ рдХреЗрд╡рд▓ рдкреНрд░рджрд░реНрд╢рди рд╕рдВрдкрддреНрддрд┐ рдорд╛рдирддрд╛ рд╣реИред рд▓реЗрдХрд┐рди, dropEffect рдХреЛ none рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рдЫреЛрдбрд╝рдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрддрд╛ рд╣реИред рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдЗрд╕реЗ move , copy , рдпрд╛ link рдХрд╛рдо рдХрд░рдирд╛ рдареАрдХ рд╣реИред рдпрд╣ Chrome 55.0.2 рдореЗрдВ рд╣реИред

рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рднреА рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмрд╛рд╣рд░ рдЗрд╕реЗ рджреЛрд╣рд░рд╛ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВрдиреЗ рдПрдХ рдлрд┐рдбреЗрд▓ рдмрдирд╛рдпрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЕрд▓рдЧ рдХрд░рддрд╛ рд╣реИ: https://jsfiddle.net/ypr6os00/8/

DropEffect рдХреЗ рд▓рд┐рдП MDN рд▓реЗрдЦ рд╕реЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ effectAllowed рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд╣реИ, рдЬрдмрдХрд┐ dropEffect рдкреНрд░реЗрдЬреЗрдВрдЯреЗрд╢рдирд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП ред рдлрд┐рдбреЗрд▓ рдЦреБрдж рдХреЗ рд▓рд┐рдП рдмреЛрд▓рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ ...

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдпрд╣ https://github.com/gaearon/react-dnd-html5-backend/sues/25 рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИ

рдореИрдВ рдЗрд╕ рдмрд╛рдд рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдХреЗрд╡рд▓ e.dataTransfer.dropEffect = 'none'; (https://github.com/react-dnd/react-dnd-html5-backend/blob/85fc956c58aad1a9fde2fca3fca3fca9115a7c87df/src/ack-5-5/ ) рдореЗрд░реЗ рдбреНрд░реЙрдкрдЬрд╝реЛрди рдбреНрд░реЙрдк рдЗрд╡реЗрдВрдЯреНрд╕ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдбрдВрдб рдХреЗ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХреЗ рдореЗрд░реЗ рдореБрджреНрджреЗ рдХреЛ рддрдп рдХрд┐рдпрд╛ред

рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП, рдореЗрд░реЗ рдкрд╛рд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЗ рд╕рдорд╛рди рдПрдХ рд╕реЗрдЯрдЕрдк рд╣реИ:

<DragDropContextProvider backend={HTML5Backend}>
  <Dropzone>
    <DropTargetComponent />
    <OtherComponent>
      <DragSourceComponent1 />
      <DragSourceComponent2 />
      <DragSourceComponentN />
    </OtherComponent>
  </Dropzone>
</DragDropContextProvider>

рдЬрд┐рд╕рдореЗрдВ DropTargetComponent = DropTarget(TYPE, target, collect)(Component) рдФрд░ DragSourceComponent = DragSource(TYPE, source, collect)(Component) ред

рдХреНрдпрд╛ рдЗрд╕ рдкреИрдЪрд┐рдВрдЧ рдХрд╛ рдХреЛрдИ рдЬреНрдЮрд╛рдд рджреБрд╖реНрдкреНрд░рднрд╛рд╡ рд╣реИ рдпрд╛ рдмреЗрд╣рддрд░ рдлрд┐рдХреНрд╕ рдЙрдкрд▓рдмреНрдз рд╣реИ? рдЕрдиреНрдпрдерд╛, рдпрд╣ рд╢рд╛рдпрдж рдЕрдЪреНрдЫреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд▓рдп рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

рд╕рднреА рдорд╣рд╛рди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдФрд░ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж @ kn0ll ред

[рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ]
рдЬрдм рддрдХ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╣рд▓ рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддреА, рддрдм рддрдХ рдореИрдВрдиреЗ рдПрдХ рдЧрд┐рдердм рдлреЛрд░реНрдХ рдФрд░ рдПрдХ рдПрдирдкреАрдПрдо рдкреИрдХреЗрдЬ рдмрдирд╛рдпрд╛ред

рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж

рдореИрдВ рдиреЗрд╕реНрдЯреЗрдб dropzones рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛- dropzone рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЯреА рд╣реИрдЯ рдкрд╛рдпрд╛ред рдпрд╣ рдкреНрд░рдЪрд╛рд░ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рд╣реИред рдЬрдм рддрдХ рдореБрдЭреЗ рдпрд╣ рдореБрджреНрджрд╛ рдирд╣реАрдВ рдорд┐рд▓рд╛, рддрдм рддрдХ рдпрд╣ рдореЗрд░рд╛ рдХрд╛рдо рдерд╛

рдореИрдВ рдЗрд╕реА рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдиреЗрд╕реНрдЯреЗрдб рдбреНрд░реЙрдкрдЬрд╝реЛрди рдХреЗ рд╡рд┐рдЪрд╛рд░ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рдПрдХ div рдХреЗ рдЕрдВрджрд░ рдЕрдкрдиреЗ рдЬреЛ рдХреБрдЫ рднреА рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдШрдЯрдХ рдХреЛ рд▓рдкреЗрдЯ рдХрд░ рд╕рдорд╛рдкреНрдд рдХрд░ рджрд┐рдпрд╛ рдФрд░ onDragOver рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рдЙрд╕ div рдореЗрдВ рдЬреЛрдбрд╝рд╛, рдЬреЛ рд╕рд┐рд░реНрдл рдкреНрд░рдЪрд╛рд░ рдХреЛ рд░реЛрдХрддреА рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рдпрд╣рд╛рдБ рдЙрджрд╛рд╣рд░рдг рд╣реИ (рдореИрдВ рдлрд╛рдЗрд▓рдкреЙрдиреНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛):

 handleDragOver (event) {
    console.log('dragged over ', event.dataTransfer)
    event.stopPropagation()
  }

  render () {
    return (
      <div onDragOver={this.handleDragOver}>
        <FilePond />
      </div>
    )
  }

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рдХреЛ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-dnd рдЗрд╕реЗ рдЕрдиреНрдп рдШрдЯрдХреЛрдВ рдкрд░ рдбреА рдПрдВрдб рдбреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкрд░ рдмрд╣реБрдд рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рд╡рд┐рд╢рд╛рд▓ рджреБрд░реНрдШрдЯрдирд╛ рдХреА рддрд░рд╣ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рдЬрд╣рд╛рдБ рдХреБрдЫ рдШрдЯрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-dnd рд╕реЗ d & d DOM-nodes рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рджреВрд╕рд░реЗ рдШрдЯрдХ рдореЗрдВ d & d рдлрд╝рд╛рдЗрд▓ рдЫреЛрдбрд╝рдиреЗ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рддреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП +1

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рддреНрд╡рд░рд┐рдд рд╕рдорд╛рдзрд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХрд┐ рдбреНрд░реЙрдкрдСрдлреЗрдХреНрдЯ рдХреЛ рдХрд┐рд╕реА рддрд░рд╣ рд╕реЗ рдХреБрдЫ рдкреНрд░реЛрдкрд░ рдЪреЗрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

рдореИрдВрдиреЗ HTML5 рдмреИрдХрдПрдВрдб рдХреЗ рд▓рд┐рдП @silvainSayduck рдлреЛрд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдорд╛рдкреНрдд рдХрд┐рдпрд╛ред рдЗрд╕рд╕реЗ рдореЗрд░рд╛ рдХрд╛рдо рдмрдирддрд╛ рд╣реИред рдЕрдлрд╝рд╕реЛрд╕ рдХреА рдмрд╛рдд рд╣реИ рдХрд┐ рдпрд╣ рдмрдЧ рд╕реАрдзреЗ рд░рд┐рдПрдХреНрдЯ-рдбреИрдВрдб рдореЗрдВ рддрдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╣реИ

рд╡рд╣рд╛рдБ рдХреЗ рдХрд┐рд╕реА рднреА рдореМрдХрд╛ рдЬрд▓реНрдж рд╣реА рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рддрдп рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ? @silvainSayduck рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ рдлрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВ?

рдореИрдВрдиреЗ рдЕрдкрдиреЗ рд░реЗрдкреЛ рд╕реЗ рдПрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдмрдирд╛рдпрд╛, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рдорджрдж рдХрд░рддрд╛ рд╣реИ (рдЬреИрд╕рд╛ рдХрд┐ рдореБрдЭреЗ рдЕрднреА рднреА рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдЕрдЧрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдПрдХ рдкрдВрдХреНрддрд┐ рдХрд╛ рдХреЛрдИ рдЕрд╡рд╛рдВрдЫрд┐рдд рджреБрд╖реНрдкреНрд░рднрд╛рд╡ рд╣реИ, рдпрд╛ рднрд▓реЗ рд╣реА рдпрд╣ рд╕рднреА рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИ)ред

1239

@darthtrevino рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ

рдкреАрдЖрд░ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рддреЗ рд╣реБрдП, рдпрд╣ рдЙрдЪрд┐рдд рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдХрд┐ рдпрд╣ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдкреЗрдВрдЪ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ

# 1240 рдореЗрдВ рдорд┐рд▓рд╛ рджрд┐рдпрд╛ рдЧрдпрд╛

рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж @darthtrevino! рдпрд╣ npm рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдХрдм рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?

рджрд┐рди рдХреЗ рдЕрдВрдд рддрдХ - рдЬрдм рдореБрдЭреЗ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рд╕рдордп рдорд┐рд▓рддрд╛ рд╣реИ, рдореЗрд░рд╛ рд╕рд╛рдорд╛рдиреНрдп рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдкреАрдЖрд░рдПрд╕ рдХреЗ рдмреИрдЪ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдПрдХ рд░рд┐рд▓реАрдЬ рдореЗрдВ рдХрдЯреМрддреА рдХрд░рдирд╛ рд╣реИред

@darthtrevino рдХреНрдпрд╛ рдпрд╣ рд╡рд░реНрддрдорд╛рди рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ? рдЬрдм рдпрд╣ рдЙрдкрд▓рдмреНрдз рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ?

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рд╡рд░реНрддрдорд╛рди рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рд╣реИ, рд╣рд╛рдБред рдпрджрд┐ рдЖрдк рд╕рдорд╕реНрдпрд╛рдУрдВ рдореЗрдВ рднрд╛рдЧ рд▓реЗрддреЗ рд╣реИрдВ рддреЛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ

@darthtrevino рдзрдиреНрдпрд╡рд╛рдж, рдпрд╣ рдЙрдкрд▓рдмреНрдз рд╣реИред

рдореИрдВ рдЗрд╕реА рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдиреЗрд╕реНрдЯреЗрдб рдбреНрд░реЙрдкрдЬрд╝реЛрди рдХреЗ рд╡рд┐рдЪрд╛рд░ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рдПрдХ div рдХреЗ рдЕрдВрджрд░ рдЕрдкрдиреЗ рдЬреЛ рдХреБрдЫ рднреА рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдШрдЯрдХ рдХреЛ рд▓рдкреЗрдЯ рдХрд░ рд╕рдорд╛рдкреНрдд рдХрд░ рджрд┐рдпрд╛ рдФрд░ onDragOver рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рдЙрд╕ div рдореЗрдВ рдЬреЛрдбрд╝рд╛, рдЬреЛ рд╕рд┐рд░реНрдл рдкреНрд░рдЪрд╛рд░ рдХреЛ рд░реЛрдХрддреА рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рдпрд╣рд╛рдБ рдЙрджрд╛рд╣рд░рдг рд╣реИ (рдореИрдВ рдлрд╛рдЗрд▓рдкреЙрдиреНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛):

 handleDragOver (event) {
    console.log('dragged over ', event.dataTransfer)
    event.stopPropagation()
  }

  render () {
    return (
      <div onDragOver={this.handleDragOver}>
        <FilePond />
      </div>
    )
  }

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рдХреЛ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-dnd рдЗрд╕реЗ рдЕрдиреНрдп рдШрдЯрдХреЛрдВ рдкрд░ рдбреА рдПрдВрдб рдбреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкрд░ рдмрд╣реБрдд рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рд╡рд┐рд╢рд╛рд▓ рджреБрд░реНрдШрдЯрдирд╛ рдХреА рддрд░рд╣ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рдЬрд╣рд╛рдБ рдХреБрдЫ рдШрдЯрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-dnd рд╕реЗ d & d DOM-nodes рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рджреВрд╕рд░реЗ рдШрдЯрдХ рдореЗрдВ d & d рдлрд╝рд╛рдЗрд▓ рдЫреЛрдбрд╝рдиреЗ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рддреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП +1

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рддреНрд╡рд░рд┐рдд рд╕рдорд╛рдзрд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХрд┐ рдбреНрд░реЙрдкрдСрдлреЗрдХреНрдЯ рдХреЛ рдХрд┐рд╕реА рддрд░рд╣ рд╕реЗ рдХреБрдЫ рдкреНрд░реЛрдкрд░ рдЪреЗрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

рдЬреЛрдбрд╝реЗрдВ event.stopPropagation() рд╣реИрдВрдбрд▓ рдкрд░ #DragOver [Dropzone] рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред рд╕рд╛рднрд╛рд░ @vileppanen

рдЗрд╕ рдзрд╛рдЧреЗ рдиреЗ рдореЗрд░реА рдЬрд╛рди рдмрдЪрд╛рдИ

рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╣рд╛рдВ <Dropzone /> react-dnd рдШрдЯрдХ рдХреЗ рдЕрдВрджрд░ рд╣реИ, рд╡рд╣реА рд╕рдорд╛рдзрд╛рди рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ - <Dropzone /> рдХреЛ <div onDragOver={e=> e.stopPropagation() /> onDragOver рд╕рд╛рде рд▓рдкреЗрдЯрдХрд░ рдкреНрд░рд╕рд╛рд░ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

gocreating picture gocreating  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dreamcog picture dreamcog  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dwjohnston picture dwjohnston  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

gaearon picture gaearon  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mx2323 picture mx2323  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ