[react]動的ルーティング(match)


どうてきルーティング


urlパラメータを使用して動的にルーティングする機能=>後のurlに基づいて異なる値を表示します.
history、location、matchの3つのコンポーネントを使用して動的ルーティングを行うことができます.
  • ルータが素子パスに追加する:id
    <Route exact path="/monsters/detail/:id" component={MonsterDetail} />```
  • fetchまたはpushのパスにid値を追加入力します.
    fetch(
          `https://jsonplaceholder.typicode.com/users/${this.props.match.params.id}`
        )
          .then((res) => res.json())
          .then((res) =>
            this.setState({
              data: res,
            })
          ); ```
  • コンポーネントDidUpdate{}を使用すると、レンダリング時にデータを再受信できます.
  • ここで条件を提示する.
  •  componentDidUpdate(prevProps) {
        if (prevProps.match.params.id !== this.props.match.params.id) {
          this.getData();
        }
      }```
      
    
    - 이렇게 유동적으로 id값을 변경시켜서 사용자가 클릭한 내용을 렌더해 보여줄 수 잇따.