Я показываю cards
с функцией отображения моего состояния. Состояние выглядит следующим образом:
[{ position: "0", state: "pending" },
{ position: "1", state: "pending" },
{ position: "2", state: "pending" }]
В функции я меняю «состояние» с «в ожидании» на «вправо», но оно ничего не обновляет sh на странице.
export const Card: React.FC<ICardOwnProps> = ({ }) => {
const [rollingCards, setRollingCards] = useState<IRollingCard[]>([{ position: "0", state: "pending" }, { position: "1", state: "pending" }, { position: "2", state: "pending" }])
const handleClick = () => {
let newArray = rollingCards;
newArray.splice(0, 1)
setRollingCards(newArray);
}
useEffect(() => { console.log("wtf") })
return (
<StyledCard className="Card">
{rollingCards.map((v, i, a) =>
<Container key={i} className={"position" + v.position} >{v.state}</Container>
)}
<div className="card__container--button">
<button onClick={handleClick}>Oui</button>
<button>Non</button>
{rollingCards[0].state}
</div>
</StyledCard>
);
}
С этого момента ничего не меняется, но когда я добавляю новый элемент состояния, который я обновляю одновременно с RollingCards, он обновляется. Я добавил счетчик, и с этим он обновляет страницу.
(я также пытался соединить массив, чтобы увидеть, обновится ли React, но не сделал)
Любая идея, почему я ' У тебя странное поведение?
Спасибо.