Sto utilizzando react-router 1.0 e la loro integrazione della cronologia.Stato di inoltro tramite this.history.pushState()
import { createHistory, useBasename } from 'history'
const history = useBasename(createHistory)({
basename: '/base-path'
});
export default (
<Router history={history}>
<Route path="/" component={require("Template")}>
<Route path="sub-page" component={require("SubPage")}/>
</Route>
</Router>
);
che sto tentando di rimuovere gli ID dalla nostra API e l'URL e passare il link sé creare da HATEOAS in un oggetto JSON. Vorrei passare i dati tramite il parametro di stato pushState.
onClickEditButton(selfLinkObject) {
this.history.pushState(selfLinkObject, "/my/url");
}
Ma quando tento di ottenere lo stato non viene passato.
import React from "react"
import { History } from "react-router"
export default React.createClass({
mixins: [History],
componentDidMount() {
console.log(this.state);
console.log(this.history.state);
console.log(history.state);
},
render() {
<p>Check the console to see if the state is passed from the pushState(state, url, params);</p>
}
});
Sembra questo è il modo pushState era destinato a lavorare secondo Mozilla's pushState documentation perché il browser salva oggetti di stato al rigido dell'utente in modo che possano essere ripristinati dopo che l'utente riavvia il browser.
Qualcuno sa come o se posso passare i dati allo stato o se c'è un modo migliore per farlo?
DUDE !!! Questo è ESATTAMENTE quello di cui ho bisogno ... Ho pensato di aver cercato ogni parte della documentazione. Apprezzo davvero il tuo uomo! Sei una rock star!! –
felice di poterti aiutare. se questo non è chiaro nei documenti, si prega di inviare il PR con le modifiche suggerite. – knowbody
Il collegamento non esiste più. –