2
定義されたルートと一致しないすべてのルートを処理するルートハンドラを指定する方法はありますか?キャッチオールルートやデフォルトルートハンドラのように。パターンと一致しないルートを処理する方法
私は、一致するルートが見つからない場合にデフォルトページをロードするようにしています。たとえば、「ページが見つかりません」というページが読み込まれます。
定義されたルートと一致しないすべてのルートを処理するルートハンドラを指定する方法はありますか?キャッチオールルートやデフォルトルートハンドラのように。パターンと一致しないルートを処理する方法
私は、一致するルートが見つからない場合にデフォルトページをロードするようにしています。たとえば、「ページが見つかりません」というページが読み込まれます。
react-router
のv4
であなたは自分のルート定義の最後の一つとしてpath
小道具コンポーネントなしRoute
を追加することができますし、他のルートが一致されていない場合、それはマッチします:
react-router
ドキュメントから
例copied:ここ
<Switch>
<Route path="/" exact component={Home}/>
<Redirect from="/old-match" to="/will-match"/>
<Route path="/will-match" component={WillMatch}/>
<Route component={NoMatch}/>
</Switch>
は、URLパスがNoMatch
コンポーネントが示されている/
、/old-match
又は/will-match
ありません。
react-router
のv3
では同じ原理が適用されます:あなたは自分のルーティング定義の最後にpath
小道具でちょうどワイルドカード文字*
とRoute
コンポーネントを追加します。
<Router ... >
{ /* Your actual route declarations */ }
<Route component={ NoMatch } path="*" />
</Router>
・ホープ、このことができます!