私はReact-JSでReact-Routerを使っています:
は<Route>
組み込みコンポーネントであり、2つの異なるプロパティがありますexact
。strict
問題
のドキュメンテーションexact
との違いは明確に定義されていませんstrict
。
どうか助けてください。その文書は非常にわかりにくく、その時点では明確ではありません。
ベストアンサー1
ユースケース1
exact
と を一緒に使用するとstrict
、 はlocation.pathname
パス プロパティで指定されたものと完全に一致します。
例:
<Route exact strict path="/one/" component={About}/>
のみに一致し、 andには一致/one/
しません。/one
/one/two
ユースケース2
のみを使用する場合strict
、 はlocation.pathname
末尾にスラッシュがある と一致します。
例:
<Route strict path="/one/" component={About}/>
および には一致します/one/
が、/one/two
には一致しません/one
。
ユースケース3
のみを使用する場合exact
、 はlocation.pathname
正確な場所のパスと一致します。
例:
<Route exact path="/one" component={About}/>
/one
または に一致します/one/
。exact
プロパティは末尾のスラッシュを考慮に入れません。ただし、 には一致しません/one/two
。