Antecedentes Estoy migrando de v4 a v6. Muchas de mis páginas son componentes de clase, no componentes funcionales, y dependí en gran medida de RouteComponentProps (escrito con Typescript):
export class UserDashboard extends React.Component<RouteComponentProps> { constructor(props){ super(props); this.updateURL = buildURLUpdater(props.history, props.location, ...); console.log(props.user); } onChooseUser = (newUser) => { this.setState({ user: newUser }, this.updateURL); } ... } <Switch> <Route path="/users"> <Users focusUser={user} /> </Route> </Switch> Pregunta Sé que React Router V6 depende en gran medida de los ganchos, pero no estoy seguro de cómo obtener location o el history en un componente de clase. ¿Es esto todavía posible?
Por qué escribí una función útil que puedo ejecutar después de cada comando setState que actualizaría automáticamente la URL e insertaría un elemento del historial sin tener que navegar. Esto sería para cuando quiero que el texto de búsqueda actual aparezca en la barra de URL a medida que el usuario escribe. Usé props.location y props.history para hacer eso. Entonces, si ya no puedo obtener accesorios de componentes de ruta, necesito una forma de capturar el objeto de historial y ubicación, o cualquiera que sean sus equivalentes V6, en el constructor de una clase.