这是我最新的侧面项目,netflix克隆。我使用了react-router v4
& autosuggest
。
github(https://github.com/kuanhsuh/netflix-clonev2)
demo(http://netflix-clonev2.surge.sh/#/)
但是我发现了一个错误,如果我在电影放映页面回家,我搜索中的链接将无效(点击后,show组件不会更新)。我认为这与router v4
和redux
集成有关。
我尝试了this
方法,但它仍无效(Programmatically navigate using react router V4)。
这是我的导航链接和我的路线。
Nav.js
import { Link, withRouter } from 'react-router-dom'
...
onSuggestionSelected = (event , { suggestion, history }) => {
event.preventDefault();
this.props.history.push('/movie/'+ suggestion.id)
this.setState({ value: ''});
}
....
Nav.propTypes = {
history: React.PropTypes.shape({
push: React.PropTypes.func.isRequired,
}).isRequired,
};
export default withRouter(connect(mapStateToProps, {fetchSearch})(Nav));
App.js(我的路线在哪里)
<Router>
<div>
<Nav />
<Switch>
<Route exact path="/" component={MovieList}/>
<Route path="/movie/:id" component={MovieShow}/>
<Route component={NotFound}/>
</Switch>
<Footer />
</div>
</Router>
谢谢你的帮助!!这对我来说意义重大,因为我还是初学者=)