Может ли кто-нибудь помочь мне понять, почему мой компонент, показанный ниже, дает сбой с ошибкой:
Слишком много повторных визуализаций. React ограничивает количество рендеров, чтобы предотвратить бесконечность l oop
Я пытаюсь создать компонент, который изменяет надписи на кнопках при щелчке от входа в систему до входа в систему.
import React, {useState} from 'react';
import {Button, Glyphicon} from 'react-bootstrap';
import "./LoaderButton.css"
export default function LoaderButton({isLoading, className= '', disabled= false, ...props}) {
const [buttonName, setButtonName] = useState(`${props.children}`)
buttonName === 'Login' ? setButtonName('Logging in..') : setButtonName(`${props.children}`)
return (
<>
<Button
className={`LoaderButton ${className}`}
disabled={disabled || isLoading}
{...props}
>
{isLoading && <Glyphicon glyph="refresh" className="spinning" />} {buttonName}
</Button>
<h1>{JSON.stringify(props.children)}</h1>
</>
)
}
Обычно это работает:
import React, {useState} from 'react';
import {Button, Glyphicon} from 'react-bootstrap';
import "./LoaderButton.css"
export default function LoaderButton({isLoading, className= '', disabled= false, ...props}) {
return (
<Button
className={`LoaderButton ${className}`}
disabled={disabled || isLoading}
{...props}
>
{isLoading && <Glyphicon glyph="refresh" className="spinning" />} {props.children}
</Button>
)
}
Как бы вы это написали?