Я новичок в реагировании и экспериментирую с реагированием-dnd, чтобы перетаскивать фрагменты в контейнер. В моей функции для обработки частей, которые были отброшены при установке состояния моего массива отброшенных частей, использование оператора распространения само по себе не работает и обновляет перетаскиваемые части только так, чтобы они были перетаскиваемыми последними. Однако он работает правильно при использовании функции обновления. Кто-нибудь знает, почему это так? При использовании оператора распространения создается впечатление, что после повторной отрисовки массив PlacedPieces всегда пуст.
import { useState } from 'react';
import { DndProvider } from 'react-dnd';
import { HTML5Backend } from 'react-dnd-html5-backend';
import Piece from './Piece';
import Space from './Space';
function Board2 () {
const [placedPieces, setPlacedPieces] = useState(Array(0))
function handlePieces(piece) {
setPlacedPieces([...placedPieces, piece])
}
console.log(placedPieces)
return(
{placedPieces.map((piece, pieceIDX)=> (
{piece.name}
))}
);
}
export default Board2;
Подробнее здесь: https://stackoverflow.com/questions/798 ... e-but-does