日常问题处理(三)
一、react子组件实现路由跳转
方法一、将父组件的this.props通过属性传递给子组件
1 2 3 4 5 6 7 8 9 | 父组件中 <Video videos={ this .state.videos} setprops={ this .props} /> //this.props为父组件的 子组件 clickHandle() { console.log( this .props.setprops) this .props.setprops.history.push( "/detail/intro" ); } |
方法二、子组件通过router的context
1、引入 PropTypes
1 | import PropTypes from "prop-types" |
2、声明contextTypes
1 2 3 | static contextTypes = { router: PropTypes. object } |
3、路由跳转
1 2 3 4 | clickHandle() { console.log( this .context) this .context.router.history.push( "/detail/intro" ); } |
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步