初學者。。我在一個組件里重定向到另一個組件 constructor(props: any) { super(props); this.props.history.push('/auth_manage')
};重定向是成功了,但是該組件剩下的函數(render())之類的都執行了,如何在這里直接跳出這個組件呢?
1 回答

慕后森
TA貢獻1802條經驗 獲得超5個贊
其實這么寫已經理解錯誤了react-router的思想,如果你想在匹配到某個路由后跳轉到另一個路由,你應該用:
<Redirect from="原來的路由" to="指定的路由"/>
而不應該進到路由后才跳轉, 如果你是進到路由后,需要判斷滿足某些條件,才進行跳轉,而且必須進到這個頁面,那么你需要在render中寫這個東西或者DidMount中去寫,因為初始化時,無法阻止執行render,你可以在render中這么寫
render() { if (xxxx) { this.props.history.push('/auth_manage'); return ''; } return 'xxxxx'; }
添加回答
舉報
0/150
提交
取消