как у React устроен hook useState?

Я понимаю что в React hook useState возвращает массив где есть значение и функция для его установки - [state, setState]. Но как он устанавливает значение при вызове setState? Если можно написать класс где есть функция setState, которая работает как и в React. Конечно не надо писать большой функционал, render и т.д. минимальный набор, что бы можно было сделать const [str, setStr] = useState('a');, и потом при вызове setStr значение переменной str менялось, вот и все. Заранее спасибо.


Ответы (1 шт):

Автор решения: Август

предполагаю, что так))

function useState(defaultValue) {
    const currentState = defaultValue;

    function stateSetter(value) {
        currentState = value;
        // дальше триггер для обновления компонента
    }

    return [currentState, stateSetter];
}
→ Ссылка