[4:41] ๋ถ๋ถ V6 ์์๋ ์ด๋ ๊ฒ ๋ฐ๊พธ๋๊ฒ ๋ง๋์??
๋ค..Login.js ๋ export default function AccountRoutes() { return ( Routes > {/* } /> */} {/* } /> */} {/* }> } /> */} Route path="/profile/*" element={LoginRequiredRoute />} > Route element={Profile />} /> Route> Route path="/login" element={Login />} /> Route path="/signup" element={Signup />} /> Routes> ) } ์ด๋ ๊ฒ ํ๊ณ , LoginRequiredRoute.js ๋ export default function LoginRequiredRoute({element : Component, ...kwargs}) { const {store : { isAuthenticated }} = useAppContext(); console.log('isAuthenticated : ',isAuthenticated); console.log('element : ',Component); if ( isAuthenticated ) { } else { } return ( Routes > {/* */} {/* { */} Route path="/profile" element={Profile />} rennder = {props => { if ( isAuthenticated ) { return Component {...props} />; } else { return Navigate replace to={{pathname : "/accounts/login", state : {from: props.location}}} /> } }} /> ; Routes> ) } ๋ก ํ๋๋ฐ์. {/* */} {/* { */} Route path="/profile" element={Profile />} rennder = {props => { ์ด ๋ถ๋ถ์ ์ธ๊ฐ์ง ๊ฒฝ์ฐ๋ฅผ ๋ค ์จ๋ดค๋๋ฐ์. location.state : null ๊ฐ ๊ณ์ ๋์, ๋ก๊ทธ์ธ์ด ๋์ด๋ profile ํ์ด์ง๋ก ๋์ด๊ฐ์ง ์๋๋ผ๊ตฌ์.