Inkinga enkulu ehlobene nokuqondisa kabusha nge-React Router v6 ukuthi ingxenye ayinikezeli kabusha lapho ukuqondisa kabusha kwenzeka. Lokhu kusho ukuthi noma isiphi isimo noma ama-props ahlobene nengxenye ngeke abuyekezwe lapho ukuqondisa kabusha kwenzeka, futhi noma yiziphi izinguquko ezenziwe kulawo manani ngeke ziboniswe ekhasini elisha. Ukwengeza, njengoba i-React Router v6 ingasekeli iyunithi yezinhlamvu zemibuzo, noma imaphi amapharamitha ombuzo adluliswe ku-URL nawo azolahleka ngesikhathi sokuqondisa kabusha.
import { Redirect } from "react-router-dom"; <Redirect to="/home" />
1. Lo mugqa ungenisa ingxenye ethi Ukuqondisa Kabusha kusuka kulabhulali ye-react-router-dom.
2. Lo mugqa unikeza ingxenye ethi Ukuqondisa Kabusha, ezoqondisa kabusha umsebenzisi emzileni "/wasekhaya".
Ngingaqondisa kanjani kabusha ku-React Router v6
v6
I-React Router v6 inikeza ingxenye entsha ebizwa ngokuthi
ngenisa okuthi { Qondisa kabusha } kusuka 'ku-react-router-dom';
Ngiqondisa kanjani kabusha ku-react router v6 ngemuva kokungena ngemvume
Ukuqondisa kabusha ngemva kokungena ngemvume ngempumelelo kuyisici esivamile ezinhlelweni zokusebenza zewebhu. Ku-React Router v6, ungasebenzisa i
Ukuze wenze lokhu, uzodinga ukudala umzila ohlola ukuthi umsebenzisi ungene ngemvume yini bese umqondisa kabusha ngokufanele. Ngokwesibonelo:
uma (isLoggedIn) {
ukubuya
} enye {
ukubuya
}
}} />
Kulesi sibonelo, sibheka ukuthi umsebenzisi ungene ngemvume yini bese sinikeza ingxenye ye-LoginPage noma siyiqondise kabusha kokuthi/ideshibhodi. Ungakwazi futhi ukudlulisa ama-props engxenyeni ethi Ukuqondisa Kabusha kanje:
Ngiqondisa kanjani kabusha ngokuzenzakalelayo ekusabeleni
I-React Router inikeza ingxenye ethi Ukuqondisa Kabusha engasetshenziswa ukuqondisa kabusha abasebenzisi ngokuzenzakalelayo lapho izimo ezithile zifinyelelwa. Ukuze uyisebenzise, โโkufanele udlule endleleni ofuna ukuyiqondisa kabusha njenge-prop. Ungaphinda udlule entweni enemibandela yesimo kanye/noma yokubuza uma kudingeka.
Ukuze uqondise kabusha ngokuzenzakalelayo, uzodinga ukusebenzisa ingxenye engaphakathi kwengxenye Yomzila futhi usethe umbandela wokuthi ukuqondisa kabusha kufanele kwenzeke nini. Isibonelo, uma ubufuna ukuqondisa kabusha abasebenzisi kusuka ekhasini lasekhaya lohlelo lwakho lokusebenza ukuya ekhasini lokungena ngemvume ngemuva kokuchofoza isixhumanisi, ungenza into efana nale:
{isLoggedIn ?
Kulesi sibonelo, sisebenzisa i-isLoggedIn boolean variable (ezodinga ukusethwa kwenye indawo) njengesimo sethu sokuthi kufanele senze nini ukuqondisa kabusha. Uma kuyiqiniso, khona-ke sinikeza ingxenye Yekhaya lethu; uma kungenjalo, senza ukuqondisa kabusha.
Uqondisa kanjani kabusha ngemva kwemizuzwana emi-5 yokusabela
Ukuze uqondise kabusha ngemva kwemizuzwana emi-5 ku-React Router, ungasebenzisa umsebenzi we-setTimeout() ukuze ushayele indlela ye-history.push() ngomzila owufunayo njengengxabano.
Isibonelo:
ngenisa {useHistory } ukusuka ku-"react-router-dom";
const history = useHistory();
setTimeout(() => {
history.push("/redirectedPage");
}, 5000);
Umcabango ongu-1 kokuthi โKuxazululiwe: qondisa kabusha nge-react router v6โ