From 37a134bd23ec4b227a0e010b08a1a89c2bbaaa0d Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 03 十一月 2020 17:10:14 +0800 Subject: [PATCH] 2020-11-03 --- src/templates/sharecomponent/searchcomponent/dragsearch/index.jsx | 26 +++++++++----------------- 1 files changed, 9 insertions(+), 17 deletions(-) diff --git a/src/templates/sharecomponent/searchcomponent/dragsearch/index.jsx b/src/templates/sharecomponent/searchcomponent/dragsearch/index.jsx index 3d546f6..9c3a55b 100644 --- a/src/templates/sharecomponent/searchcomponent/dragsearch/index.jsx +++ b/src/templates/sharecomponent/searchcomponent/dragsearch/index.jsx @@ -8,8 +8,6 @@ import './index.scss' const Container = ({list, placeholder, handleList, handleMenu, deleteMenu }) => { - let target = null - const [cards, setCards] = useState(list) const moveCard = (id, atIndex) => { const { card, index } = findCard(id) @@ -75,10 +73,6 @@ handleList(_cards, copycard) } - const hasDrop = (item) => { - target = item - } - const [, drop] = useDrop({ accept: 'search', drop(item) { @@ -112,21 +106,20 @@ } newcard.match = _match - - let targetId = cards.length > 0 ? cards[cards.length - 1].uuid : 0 - if (target) { - targetId = target.uuid + + let targetId = '' + + if (item.dropTargetId) { + targetId = item.dropTargetId + delete item.dropTargetId + } else if (cards.length > 0) { + targetId = cards[cards.length - 1].uuid } const { index: overIndex } = findCard(`${targetId}`) - let targetIndex = overIndex - - targetIndex++ - - const _cards = update(cards, { $splice: [[targetIndex, 0, newcard]] }) + const _cards = update(cards, { $splice: [[overIndex + 1, 0, newcard]] }) handleList(_cards, newcard) - target = null } }) @@ -142,7 +135,6 @@ editCard={editCard} delCard={delCard} findCard={findCard} - hasDrop={hasDrop} /> </Col> ))} -- Gitblit v1.8.0