Я создаю игру памяти, у меня есть функция перемешивания, которая перемешивает массив чисел, эти числа отображаются как карточки, проблема в том, что карточки перемешиваются при каждом изменении состояния, мне нужно только инициализировать свой компонент с перетасованный массив, который сохраняется даже при изменении состояния!
я пробовал useEffect
, но он не работает, или я не смог правильно его реализовать
код:
const numbers = [1, 2, 3, 1, 2, 3];
const shuffle = (arr) => {
//shuffle logic here
}
let shuffledCards;
useEffect(() => {
shuffledCards = shuffle(numbers) // it doesn't help
}, [])
return(
<cards shuffledCards={shuffledCards} />
)
как я могу перетасовать свой массив один раз вместо каждого изменения состояния!