1

react-router-component でハッシュベースのルーティングを使用したいので、次のようにhash属性を<Locations>コンポーネントに追加しました。

<div id="page-wrapper">
  <Locations hash>
    <Location path="/" handler={HomePage} />
    <Location path="/movies/" handler={MoviesPage} />
    <Location path="/movies/:id" handler={MoviePage} />
  </Locations>
</div>

私はこの場所に次のようにリンクしています:

<li><Link href="/">Home</Link></li>
<li><Link href="/movies/">Movies</Link></li>

また、コンポーネントにハッシュタグを手動でLink含めようとしました (ハッシュベースのルートにリンクする方法が文書化されていないことがわかりません)。

<li><Link href="/#/">Home</Link></li>
<li><Link href="/#/movies/">Movies</Link></li>

問題は、いずれにせよ、react-router-component がリンクのクリックに応答しないことです。ブラウザーで URL を更新していますが、場所でハンドラーとして定義されたコンポーネントをレンダリングするように切り替えていません。

http://localhost:8082/#/movies/などの URL に手動でアクセスすると、正しいコンポーネントがレンダリングされますが、やはりナビゲートできません。

hashまた、から属性を削除すると、<Locations>ルートへのリンクが再び期待どおりに機能します。

4

0 に答える 0