Это довольно просто, когда вы нажимаете «добавить», он должен добавить (и он добавляет), а когда вы нажимаете «удалить», он должен вытолкнуть последний элемент и повторно отобразить список, но этого не происходит. Я где-то ошибаюсь?
import React, { useState, useEffect } from 'react';
const Test = () => {
const [list, setList] = useState([]);
const add = () => {
setList([list.length, ...list]);
}
const remove = () => {
list.pop();
setList(list);
}
useEffect(() => {
console.log(list)
}, [list])
return (<ul>
<button onClick={add}>add</button>
<button onClick={remove}>remove</button>
{list.map(el => <li>{el}</li>)}
</ul>)
}
export default Test;
UPDATE: На самом деле он обновляет состояние, удаляя последний элемент, но повторный рендеринг происходит только при нажатии кнопки «добавить»