그래서 나는이 간단한 상황이 실제 라우터 라우터 4에서 작동하도록 고심하고 있습니다. 기본적으로 구성 요소를 렌더링 할 사용자 데이터를 검색하는 데 사용되는 매개 변수가 있습니다. /:user
. 나는 또한 /:user/:specificView
처럼 렌더하는 페이지에 대해 좀 더 구체적인 뷰를 가지고 있습니다. 후자가 특정 뷰와 같은 일치하는 사용자를 놓치지 않도록 다음 정규 표현식을 시도했지만 아무 것도 올바르게 작동하지 않는 것 같습니다.상대 라우터 4 상대 경로
<div>
<Switch>
<Route
exact
path="*/:user/:specificView(coolview|niceview|okview)"
render={routerProps =>
<SpecificViewContainer {...routerProps} {...this.props}/>}/>
<Route
path="/:user"
render={routerProps =>
<UserPageContainer {...routerProps} {...this.props}/>}/>
</Switch>
</div>
상대 경로 부분은이 두 경로 아무것도 (/coolusers/:user/:specificView
, /okusers/butnotbad/:users/:specificView
... 등)의 상단에 앉아 할 수있는 온, 그래서 그들은 경로 이름의 마지막 조각을해야합니다.
나는 많이 봤했는데 그것은 개방 슬래시가 제안되었다 생략 상대 경로 형식 :user/:specificView
보인다 그러나 나는 그것이 그것을 만든 믿을 수 없어 그렇게 작동하지 않습니다 : https://github.com/ReactTraining/react-router/issues/5127
어떤 도움 것 대단해! 불행히도 서버 측보기 경로가 어떻게 될지 결코 알지 못하기 때문에 상대 경로와 관련이 있습니다. 내가 경로를 허용하는 match.path
을 사용하고