Tengo una ruta con id de patients/:id . Estoy escribiendo route en un navegador como patients/10 y muestra los datos de un paciente con id 10. El problema es que cuando estoy escribiendo una id que no existe en DB devuelve datos en blanco. Mi expectativa es que regrese a la página 404 o algo así. ¿Hay alguna manera de que yo haga eso?
Sí, puede lograr esto colocando una condición en su llamada API, es decir, si su API arroja un error de 404, simplemente redirija a la página 404 usando this.props.history.push('/404') , esto es un ejemplo, puede usar esto como referencia.
Sí, esto es posible. Supongo que su interfaz React está consultando el servidor para cada paciente.
Al realizar la solicitud en la página, puede verificar si el cuerpo de la respuesta está vacío. Si está vacío, puede redirigir a un 404. Si hay datos, puede continuar imprimiendo datos en la página.
const isEmpty = Object.keys(obj).length === 0; if isEmpty(response) { return <Redirect to="/your-404-route" /> } // continue to print details belowPara esto primero, revisas los datos que existen en la base de datos o no. Si los datos están saliendo en la base de datos, entonces se redirige como pacientes/10 URL; de lo contrario, se redirige a /página de error (nombre de la ruta de la página de error).