我有一个组件,如果有人复制该URL并将其分页到新标签中,则会崩溃,因为它缺少上一步中所需的数据。
我想将他们重定向到其他页面,并将其从他们的“后退”历史记录中删除。所以我在考虑使用“替换”
我一直在 componentDidMount 上进行此操作,但是注意到一切似乎都运行了两次。
// Page1Component
componentDidMount(){
if(true){
const { replace } = props.routingStore;
const params = props.match.params;
replace('/members/home')
}
}
因此,当上面的代码被点击时,就会发生这种情况
答案 0 :(得分:0)
您可以直接在render
方法中使用Redirect组件:
if(...) {
return <Redirect to="/members/home" push={false}/>;
}
请注意,使用push={false}
将替换历史记录中的当前条目