React-router v6의 탐색경로 탐색 및 부분 일치 라우팅
P粉520545753
P粉520545753 2024-01-10 16:48:48
0
1
505

저는 이전에 use-react-router-breadcrumbs라는 타사 라이브러리를 사용하여 탐색경로를 설정했지만, 문서에 따르면 이제 React-router-dom v6.8.1(현재 최신 버전)을 사용하고 있습니다. "내장 반응 라우터 방식"에 대한 문서는 여기에 있습니다. 이는 각 경로의 핸들 객체에 탐색경로를 연결하고 이를 검색하기 위해 useMatches 후크를 사용하는 것을 기반으로 합니다.

그래서 코드를 다시 작성했는데, 고칠 수 없는 꽤 큰 결함이 있습니다. 3개의 경로가 있고 2와 3이 1 아래에 중첩되어 있다고 가정해 보겠습니다.

으아아아

사용자 정의 라이브러리를 사용하면 /users/:id로 이동하여 각 경로에 대한 이동 경로를 얻을 수 있으며 전체 이동 경로 탐색은 다음과 같습니다.

"홈 -> 사용자 -> John Doe"

그러나 새로운 내장 메소드와 useMatches() 후크를 사용하면 경로 1과 3만 일치시킬 수 있습니다. 경로 2(/users)는 일치하는 것으로 간주되지 않으며 해당 경로에 대한 이동 경로에 액세스할 수 없습니다. 결과는 다음과 같습니다. 이는 제가 원하는 것이 아닙니다.

"홈 -> John Doe"

제 질문은: 이 상황을 어떻게 처리해야 합니까? 내 첫 번째 생각은 이동 경로가 올바르게 표시되도록 경로 3을 2 아래에 중첩시키는 것이었지만 실제로는 경로 1(레이아웃)과 경로 3( 사용자 세부정보 페이지).

useMatches()가 부분 일치를 반환하는 구성을 허용할 것으로 예상했지만 이 후크는 어떤 입력도 허용하지 않는 것 같습니다.

롤백하고 타사 라이브러리로 돌아가려고 하는데 그렇게 하기 전에 여기에 물어보고 싶었습니다. 그들은 useMatches 및 핸들 개체를 기반으로 하는 기본 솔루션을 사용하는 것이 분명히 권장되기 때문입니다. 이것이 반응 라우터 탐색경로를 처리하는 공식적으로 권장되는 방법이라면 해결책이 있어야 한다고 생각합니다.

P粉520545753
P粉520545753

모든 응답(1)
P粉113938880

제가 이해한 바에 따르면 이는 "/users""/users/:id"是兄弟路由。重构路由配置,使"/users/:id"成为"/users"的子路由,这样就有了一个“逻辑路径”,从"/""users"":id"의 다양한 부문 때문입니다.

예:

으아악

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿