La configuration de l'application basename dans réagissent-routeur

Je suis un peu en difficulté avec réagissent-routeur 2.la configuration de x, plus précisément application basename.

J'ai une application qui peut avoir différentes de la base de la racine tout au long de son cycle de vie. Par exemple:

  • / dans le développement
  • /users dans la production
  • /account de la production après la migration

Le nom de base entre en jeu à plusieurs endroits:

  • statique de l'actif de la compilation dans Webpack
  • réagir-routeur principal de configuration
  • la spécification de rediriger les routes dans redux actions
  • fournir quelque chose comme redirectUrl aux appels d'API

Ma solution actuelle est d'avoir un ENV variable et de le rendre accessible à la fois à Webpack et à l'application elle-même par l'injection de window.defs via un server Express, mais j'ai quand même avoir des choses comme ${defs.APP_BASENAME}/signin dans beaucoup trop d'endroits tout au long de l'application.

Comment puis-je résumé l'application de la base, ou au moins de le ranger dans un seul endroit? Je devrais être capable de spécifier la base de l'itinéraire dans la config du Routeur, et puis il suffit d'utiliser par rapport routes en quelque sorte, non? Ou ai-je raté quelque chose?