En passant accessoires de Réagir Routeur enfants routes

Je vais avoir de la difficulté à surmonter un problème de réagir routeur. Le scénario est que j'ai besoin de passer les enfants itinéraires d'un ensemble d'accessoires à partir d'un état du composant parent et de l'itinéraire.

ce que je voudrais faire est de passer childRouteA son propsA, et passer childRouteB son propsB. Toutefois, la seule façon dont je peux comprendre la façon de le faire est de passer RouteHandler les deux propsA et propsB ce qui signifie que chaque enfant route se chaque enfant prop indépendamment de sa pertinence. ce n'est pas un problème de blocage pour le moment, mais je peux voir une fois quand je serais en utilisant les deux de la même composante qui signifie que les touches sur la propA sera écrasé par les touches, les touches de propB.

# routes
routes = (
  <Route name='filter' handler={ Parent } >
    <Route name='price' handler={ Child1 } />
    <Route name='time' handler={ Child2 } />
  </Route>
)

# Parent component
render: ->
  <div>
    <RouteHandler {...@allProps()} />
  </div>

timeProps: ->
  foo: 'bar'

priceProps: ->
  baz: 'qux'

# assign = require 'object-assign'
allProps: ->
  assign {}, timeProps(), priceProps()

Cela fonctionne de la manière que je l'attendez. Lorsque je créer un lien vers /filters/time - je obtenir le Child2 composant de rendu. quand je vais à /filters/price - je obtenir le Child1 composant de rendu. le problème est qu'en faisant ce processus, Child1 et Child2 sont tous deux passé allProps() même si ils n'ont besoin que de prix et de délai d'accessoires, respectivement. Cela peut devenir un problème si ces deux éléments identiques prop nom et, en général, n'est tout simplement pas une bonne pratique pour gonfler les composants avec des accessoires inutiles (comme il y a plus de 2 enfants dans mon cas).

donc en résumé, est-il un moyen de passer le RouteHandler timeProps quand je vais sur le temps de trajet (filters/time) et passez uniquement priceProps à RouteHandler quand je vais sur le prix de la route (filters/price) et pour éviter de passer tous les accessoires pour tous les enfants des routes?

InformationsquelleAutor PhilVarg | 2015-08-06