今回は React-Router でページを更新せずに Url パラメータを変更する方法を紹介します。 React-Router でページを更新せずに Url パラメータを変更するための注意事項は次のとおりです。ケースを見てみましょう。
問題
今日ページを書いているときに問題を見つけました。それは、次のような React Router の Url パラメーター受け渡し関数の使用です:export class MainRouter extends React.Component { render() { return ( <BrowserRouter> <Switch> ... <Route exact path={'/channel/:channelId'} component={ChannelPerPage}/> ... </Switch> </BrowserRouter> ); } }
this.props.match.params
解決策
情報を調べた結果、根本的な原因は、プロパティの変更によってコンポーネントが再レンダリングされるのではなく、状態の変更のみがコンポーネントの再レンダリングを引き起こすことであることがわかりました。 URL パラメータは props に属しているため、URL パラメータを変更してもコンポーネントが再レンダリングされることはありません。 後で、React コンポーネントにオーバーライド可能なメソッドがあることを発見しましたcomponentWillReceiveProps(nextProps) { ... }
JS DOM 要素の一般的な追加、削除、変更、検索操作の詳細な説明
以上がページを更新せずに React-Router の URL パラメータを変更する方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。