私はリアクションルータ(v2.4.0)を使用して現在のアプリケーションの場所にアクセスする "反応する"方法を理解しようとしています。などの変更を破る新しい反応し、ルータに先立ち、私は今、それは再び私は私のコンポーネントのコンテキストにルータを注入することができるようだReactでCurrentPathにアクセスする正しい方法
this.context.router.getCurrentLocation()
を使用することができましたが、ルータインスタンス自体は、APIを含んでいません現在の場所やクエリパラメータなどに関連するものを取得してください。論理的な質問が表示されました。「これは正しいのですか?」
私が使用している反応ルータのRouteコンポーネントが、そのルートにマップされているコンポーネントのプロパティにその場所を注入していることがわかりました。そしてそれは素晴らしいです!しかし、私の場合は、Routeにマップされているマスターコンポーネントの内部に深くネストされた複数のコンポーネントレイヤーがあるため、「this.props.locationを実際に必要とするコンポーネントに渡すか、それを作る人間の道がありますか?」
現在のルータのパス、クエリパラメータ、およびそのようなものは、コードに必要な場合があります。 this.props.routerおよび/またはbrowserHistoryオブジェクトを直接操作するはずですが、this.props.locationをどこに必要な場所に伝播するかを見つける必要がありますか、または画像に何か不足していますか?
ありがとうございました!
まあ、私は多くの場合、1コントローラであることを、位置情報を必要なコンポーネントを設計しできることに同意することができます/ルータによってレンダリングされますが、時には不可能です。とにかくポイントは、私はそれが好きかどうか、これはどのように反応したルータの場所を意図したものです使用される... –