glem1337
@glem1337

Можно ли сделать в react-beautiful-dnd несколько droppable областей?

Доброго времени суток!

https://codesandbox.io/s/winter-fast-id00z?file=/s...

Проблема заключается в следующем. При перетаскивании на COPY_AREA в методе onDragEnd не отлавливается drop на эту область, только в самом списке.

Возможно ли с помощью этой библиотеки добиться желаемого? Дело в том, что в документации я прочитал что <Draggable /> должен быть обязательно обернут <Droppable />, но мне нужен пустой контейнер при драге на который бы я что-то делал (удалял/копировал). При этом я нашел issue где сказано, что такое возможно https://github.com/atlassian/react-beautiful-dnd/i...
  • Вопрос задан
  • 600 просмотров
Решения вопроса 1
hzzzzl
@hzzzzl
им обеим надо задать одинаковый TYPE, чтобы они обе могли принимать айтемы с одинаковым типом

<Droppable droppableId="droppable2" type="LIST">
....


onDragEnd(result) {
    ....
    console.log(result.destination.droppableId, result);

    if(result.destination.droppableId === 'droppable2') {
      // переместить в this.state.items2, или еще как-нибудь отметить позицию айтема
    }
    .....
  }


https://github.com/atlassian/react-beautiful-dnd/b...

type: A TypeId(string) that can be used to simply accept only the specified class of <Draggable />. <Draggable />s always inherit type from the <Droppable /> they are defined in. 

For example, if you use the type PERSON then it will only allow <Draggable />s of type PERSON to be dropped on itself. 

<Draggable />s of type TASK would not be able to be dropped on a <Droppable /> with type PERSON.
If no type is provided, it will be set to 'DEFAULT'.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы