무경로 레이아웃 경로 리믹스
2611 단어 react
예를 들어 하나의 레이아웃을 공유하는 여러 인증 경로를 도입하려는 경우 어떻게 됩니까?
auth
폴더로 가서 login.tsx
및 register.tsx
와 같은 파일을 만들 수 있습니다.그게 통할거야, 그렇지?
대답은 '예'입니다.
그러나 이 접근 방식의 단점은
/auth
접두사가 붙은 모든 URL을 얻는다는 것입니다.http://mywebsite.com/auth/login
http://mywebsite.com/auth/register
Remix는 이 문제에 대한 경로 없는 레이아웃 경로를 제시했습니다.
Remix의 경로 없는 레이아웃 경로
이러한 경로 없는 레이아웃 경로의 기본 아이디어는 레이아웃을 공유할 수 있지만 URL 세그먼트로 읽히지 않는다는 것입니다.
이를 사용하려면 폴더 앞에 두 개의 밑줄을 붙여야 합니다:
__auth
.그리고 레이아웃 파일의 경우 동일하게
__auth.tsx
접두사를 붙입니다.이 로그인 페이지를 설정하여 실제로 작동하는지 확인하십시오.
먼저, route 디렉토리 안에
__auth
폴더를 만듭니다.그런 다음 기본 인증 레이아웃을 보유할 레이아웃 파일을 생성합니다.
이 파일은
__auth.tsx
라고 하며 경로 디렉토리의 루트에 있습니다.먼저 기존
login
또는 register
경로를 제거하고 login.tsx
디렉토리 내에 register.tsx
및 __auth
를 만듭니다.각각 다음과 유사한 파일을 가질 수 있습니다.
export default function Login() {
return <p>This is the login page</p>;
}
Note: Make sure to rename the function name and the actual copy.
이제 웹 사이트를 실행하면
/login
및 /register
로 이동할 수 있으며 인증 레이아웃이 계속 유지됩니다!꽤 멋진 것, 리믹스!
GitHub에서 완성된 코드를 찾을 수도 있습니다.
읽어주셔서 감사합니다. 연결합시다!
제 블로그를 읽어주셔서 감사합니다. 내 이메일 뉴스레터를 구독하고 Facebook에 연결하거나
Reference
이 문제에 관하여(무경로 레이아웃 경로 리믹스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/dailydevtips1/remix-pathless-layout-routes-5i2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)