在反應路由器documentation爲onEnter
鉤他們指定如何處理,但onLeave
沒有例子。我的問題是如何確認用戶想要正確離開頁面。在反應路由器是onEnter是onLeave
根據以下兩種情況給出的代碼,無論用戶點擊cancel
還是ok
,它都會離開頁面。但OnEnter鉤按邏輯工作正常。
const checkEnterAbout = (nextState, replace, callback) => {
if(!confirm('do you want to enter really!!!')){
replace(`/`);
}else{
callback();
}
}
const checkLeaveAbout = (prevState) => {
console.log(prevState);
return confirm("Are you sure you want to leave this page");
}
<Route path="/about" component={About} onEnter={checkEnterAbout} onLeave={checkLeaveAbout} />
另外當我試着withRouter確認指南。它給我的
Failed prop type: Invalid prop `component` supplied to `Route`.
in Route
您是否想在** **的任何頁面的用戶離開的確認?或者只是關於頁面? – samvv
只是關於頁面 – owaishanif786