Ваш код печатает 0, потому что это значение переменной number
во время рендеринга.
Вы используете следующий код:
fetch("some.url")
.then(res => res.json())
.then(list => {
for (let n of list) {
numbers.push(n);
}
});
, чтобы получить новое значение асинхронно,но это не будет иметь никакого эффекта: компонент уже визуализирован.
Если вы хотите обновить его, вы должны поместить свой номер переменной в state
и использовать setState()
для передачи нового значения.
Если вы хотите использовать функциональные компоненты, вам следует использовать совершенно новую функцию хуков, которая должна дать вам эквивалент setState
.