Это не функциональный компонент, поскольку функциональный компонент должен возвращать элемент React.
Если это будет функциональный компонент, и вы изменяете переменную синхронно перед возвратом элемента, все в порядке:
const Func = () => {
let fruit = "banana";
const changeFruit = () => {
fruit = "apple"
};
changeFruit();
return <>{fruit}</>; // displays "apple"
};
Если вы измените его асинхронно , например
setTimeout(changeFruit, 1000);
, тогда компонент не будет повторно отображаться послепеременная изменена. Обычно это не то, что вы хотите. Если вы useState
и вызываете функцию setFruit
, компонент перезапускается.