Клон useState hook - PullRequest
       1

Клон useState hook

0 голосов
/ 11 апреля 2020

Читая эту статью https://www.netlify.com/blog/2019/03/11/deep-dive-how-do-react-hooks-really-work/, я пытаюсь создать эквивалентный исходный код для useState. Итак, вот код:

const MyReact = (function() {
  let _val;
  return {
    useState(initialValue) {
      _val = _val || initialValue;
      function setState(newVal) {
        _val = newVal
      }
      return [_val, setState];
    }
  }
})()

function Counter() {
  const [count, setCount] = MyReact.useState(0);
  setCount(2);
  setTimeout(()=>console.log(count), 2000); 
}

Counter(); // 0

Приведенный выше код не соответствует useState logi c, поскольку он должен выводить 2. Что я должен изменить в клоне useState в упрощенном виде

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...