我想让用户在当前路由跳转到别的路由前有一个confirm提示,但是我所有的路由都是用配置文件配置的,不是用react组件写的代码: childRoutes: [ { path: 'manage/cat', component: CatManager }, { path: 'manage/sku', indexRoute: { component: SkuManager }, childRoutes: [ { path: 'add', component: SkuCreate, routerWillLeave: (nextLocation) => { console.log('react router 路由跳转=======>',nextLocation); return false; } } ] }我想让用户在离开/manage/sku/add路由时执行一些动作,该怎么写?现在这样写并不执行啊
1 回答
回首忆惘然
TA贡献1847条经验 获得超11个赞
应该是onLeave
事件吧
routerWillLeave 是高阶组件容器withRouter
重写的方法。你如果要用的话应该在组件内部使用,如下
import React from 'react'
import { withRouter } from 'react-router'
const Demo = React.createClass({
componentDidMount() {
this.props.router.setRouteLeaveHook(this.props.route, () => {
return 'funk away'
})
},
render() {
return <div>go</div>
}
})
export default withRouter(Demo)
添加回答
举报
0/150
提交
取消