当我刷新页面props.location.state === null时,我使用了此Link。 在不使用本地存储的情况下刷新或计费新页面时将数据保留在props.location.state中的任何解决方案?
<Link to={{ pathname: `/details/${imdbID}`, state: this.props }}>
答案 0 :(得分:0)
您必须将要保存的状态存储到本地存储中。
let savedState = JSON.stringify(props.location.state)
localStorage.setItem('myState', savedState);
要从本地存储获取保存状态
let retrievedState = JSON.parse(localStorage.getItem('myState'));
答案 1 :(得分:0)
无需将所需的数据存储在本地存储中,您可以将其转储到任何地方,无论是否刷新数据,都将始终存在于路由中,我们需要使用prop 例如:
<Route path="/details" render={(props)=> (
<Details {...props} propWhatever={{data}} />
)} />