props.loadingStatus.state (valor proveniente del servidor) (el valor puede ser No iniciado, En ejecución, Completado) según el valor de loadingstatus, es decir, si se está ejecutando, muestre la barra de progreso + si el estado == se completó antes de 500 ms y luego haga que la barra de progreso sea visible durante 500 ms.
resultado actual: puedo ver la barra de carga pero luego, incluso después de 500 ms, es visible. No estoy seguro de dónde va mal mi lógica.
const App =() => { const [LoadStat, setLoadStat] = React.useState(props.loadingStatus.state); React.useEffect(() => { setTimeout(() => { if (LoadStat === Running) { setLoadStat(props.loadingStatus.state); } }, 500); }, []); return ( <> {LoadStat && ( <ProgressBar minValue={0} maxValue={100} progress={percentage} /> )} </> ); } }React.useEffect(() => { if (LoadStat === Running) { setLoadStat(props.loadingStatus.state); } else{ setTimeout(() => { // hide the progressBar }, 500); } }, []);No sé si esto responde a su pregunta, pero esto es lo que obtuve de su solicitud. Con esto, la barra de progreso se actualizará con cada cambio de estado de carga, pero desaparecerá 500 ms después de finalizar.