Условно нельзя использовать крючки, поэтому переместите крюк выше условия.
function Apple(props){
const {seeds} = props;
const [bitesTaken, setBitesTaken] = useState(0);
if(!seeds){
return null;
}
return <div>{bitesTaken}</div>
}
Вы также можете упростить рендеринг следующим образом:
function Apple(props) {
const { seeds } = props
const [bitesTaken, setBitesTaken] = useState(0)
return !!seeds && <div>{bitesTaken}</div>
}
Если seeds
Если значение равно Falsey, то будет возвращено false
(что будет отображаться как ничто), в противном случае будет возвращено div
.
Я добавил двойной восклицательный знак к seeds
, чтобы превратить его в логическое значение, потому что если seeds
равно undefined
, то при рендеринге ничего не возвращается и React выдает ошибку.