> 웹 프론트엔드 > JS 튜토리얼 > React Router의 링크에서 대상 구성 요소에 Prop을 전달하는 방법은 무엇입니까?

React Router의 링크에서 대상 구성 요소에 Prop을 전달하는 방법은 무엇입니까?

Linda Hamilton
풀어 주다: 2024-10-31 21:38:02
원래의
800명이 탐색했습니다.

How to Pass Props to Target Components in React Router's Link?

Link React-Router의 Pass Props

React-Router의 Link 구성 요소를 사용하면 대상 구성 요소에 속성을 전달할 수 있습니다. 그러나 데이터 전송을 용이하게 하려면 적절한 경로 구성을 보장하는 것이 중요합니다.

경로 경로가 의도한 속성 검색과 일치하지 않을 때 문제가 발생합니다. 제공된 코드에서 대상 구성 요소에 해당 경로가 없습니다.

<Route name="ideas" handler={CreateIdeaView} />
로그인 후 복사

문제를 해결하고 링크를 통해 속성을 전달하려면 경로 구성에서 경로를 지정하고 구성 요소:

<Route name="ideas" path="/:testvalue" handler={CreateIdeaView} />
로그인 후 복사

:testvalue 자리 표시자 매개 변수는 에 전달된 속성에 해당합니다.

<Link to="ideas" params={{ testvalue: "hello" }} />
로그인 후 복사

이제 대상 구성 요소의 렌더링 메서드에서 속성에 액세스할 수 있습니다.

render: function() {
  console.log(this.props.match.params.testvalue); // logs "hello"
}
로그인 후 복사

기능적 구성 요소에서 후크를 사용하면 다음과 같이 prop에 액세스할 수 있습니다.

const CreatedIdeaView = () => {
  const { testvalue } = useParams();
  console.log(testvalue); // logs "hello"
}
로그인 후 복사

또는 경로 매개 변수 대신 쿼리 매개 변수를 전달해야 하는 경우 다음과 같이 사용할 수 있습니다. :

<Link to={{pathname: '/ideas', query: {testvalue: "hello"}}} />
로그인 후 복사

대상 구성 요소에서:

componentDidMount() {
    console.log(this.props.location.query.testvalue) // logs "hello"
}
로그인 후 복사

위 내용은 React Router의 링크에서 대상 구성 요소에 Prop을 전달하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿