Estoy trabajando en el proyecto de enrutador de reacción (soy principiante) para mejorar mi habilidad.
mi problema:
Tengo un archivo JSON (Dragon ball Z). Cuando hago clic en personajes (como goku) quiero mostrar su biografía. En realidad, cuando hago clic en goku, se muestran todas las biografías de cada personaje.
Sé cómo hacerlo con el componente de función (useLocation, etc.) pero estoy totalmente atascado con el componente de clase porque no puedo usar ganchos en él, ¿cuál es la buena manera de hacerlo?
aquí está el proyecto: DBZ REACT ROUTES
Gracias
Usando react-router-dom v6 podemos usar useParams para leer la clave de parámetros dentro del componente de función. Con class component puede escribir una función HOC para archivar lo mismo
un componente de orden superior es una función que toma un componente y devuelve un nuevo componente
import { useParams } from 'react-router-dom' function withParams(Component) { return props => <Component {...props} params={useParams()} />; } class Charbio extends React.Component { componentDidMount() { let { id } = this.props.params; // get the bio by id here } render() { return API.map((element) => { return <p>{element.bio}</p>; }); } } export default withParams(Charbio);