React · Middle · Запитання 61 з 75
Чому цей компонент нечистий?
let guestCount = 0;
function Guest() {
guestCount++;
return <p>Guest #{guestCount}</p>;
}- ✓Правильна відповідь: Він під час рендера мутує зовнішню змінну, тож результат залежить від того, скільки разів React його відрендерить
- 2Він використовує шаблон усередині JSX
- 3Компоненти не можуть читати змінні модуля
Пояснення
Strict Mode у розробці рендерить двічі й виявляє такі баги. Передайте номер через prop або обчисліть його з даних.