私はリアクションルータを使用して反応するアプリケーションを持っていますv4。私のアプリの外に私はルータを更新する必要があるいくつかのリンクがあります。反応の外部からルータにアクセスするにはどうすればよいですか?私は何らかの形でウィンドウオブジェクトのBrowserRouterインスタンスを公開しますか?外部からの反応ルータ4の反応
0
A
答えて
0
t1; dr現在、良い解決策はありません。何かを実装する前に、v4のAPIが完成するまで待つべきでしょう。プロジェクトのさまざまな支店/リリースでこれを行う方法には、さまざまなアプローチがあります。最終リリースではどちらがうまくいくのでしょうか?
理想的な方法はv2/3に似ています。これらのバージョンでは、browserHistory
とhashHistory
が利用可能になります。プロジェクト全体からインポートでき、常に同じhistory
インスタンスにアクセスできます。
独自の履歴インスタンスを同様の方法で作成できます。
// history.js
import { createBrowserHistory } from 'history'
// configure your history instance here if you need to
export default createBrowserHistory()
history
インスタンスをプロジェクト全体でインポートすることができます。
残念ながら、現在のバージョンのv4で公開されているすべてのルータコンポーネントでは、既存の履歴インスタンスを渡すことはできません。代わりに、彼らはすべてhistory
インスタンスを作成します。これを回避するには、history
インスタンスを支柱とする独自のルータコンポーネントを作成する必要があります。どのようにこれを行うかは、異なるバージョン間で全く異なっています。
関連する問題
- 1. 反応起動ストラップの外部リンクNavItemと反応ルータ
- 2. 反応ルータが外部URLにナビゲート
- 3. <Match/>反応ルータ4のコンポーネント
- 4. カントセットアップ反応ルータ
- 5. 反応ステータス404と反応ルータとHTMLWebpackPlugin
- 6. 反応ルータのサブドメイン
- 7. 反応ルータのデフォルトパスパラメータ
- 8. ReactJS反応ルータRoutingContext
- 9. フェッチデータに反応-ルータ
- 10. 反応し、ルータを
- 11. 反応ルータ - ログイン後のリダイレクト
- 12. が反応ルータv4の
- 13. 反応ルータの設定
- 14. 反応ルータからgoove()を避ける
- 15. セレクタ内のルータの反応状態に反応する
- 16. 流星反応ブートストラップと反応ルータを持つヘッダのアイコン
- 17. が反応し、ルータを
- 18. 反応ルータおよびコンテキストタイプ
- 19. は、ルータに反応 - バウンドコンポーネント
- 20. 反応-ルータを - サーバーサイド・レンダリング・マッチ
- 21. 増補反応し、ルータモジュールを反応させ、ルータ中継タイピングで
- 22. 反応ルータでの動作へのスクロール
- 23. サーバ側のレンダリング+反応ルータのリダイレクト
- 24. アクセス外部のコンテキストからのコンポーネント関数の反応
- 25. 反応ルータへのアクセス方法
- 26. SPAの反応ルータとGoogleキャッシュページ
- 27. 反応し、ルータのチュートリアルは、Mac
- 28. 反応ルータの多言語サポート
- 29. 反応ルータのルートをモジュール化する
- 30. 反応ルータのセキュリティを確保する
更新すると、コンポーネントの外からナビゲートする必要があることを意味しますか? –
はい。私の一時的な解決策は、Appがマウントされ、 'this.context.router.transitionTo()'を呼び出すメソッドをウィンドウに公開することでした。理想的ではないが今のところ働く。 – Ben