Quelle est la différence en utilisant react-router et les routes express.js

Je fais un projet en utilisant react, redux et express, Je ne comprends pas quelle est la différence entre react-router et les routes express.j, ai-je besoin de combiner les deux ou juste en utiliser un ?

Https://github.com/reactjs/react-router

Merci pour l'aide :)

22
demandé sur fandro 2016-03-04 15:51:19

1 réponses

Note: ce post stackoverflow contient des exemples et des codes qui pourraient vous aider beaucoup.

C'est un malentendu classique. Express gérera vos routes backend tandis que React (avec react-router ou toute lib de routage frontal) gérera les routes frontend. Votre application React sera probablement un SPA (application d'une seule page), ce qui signifie que votre serveur (express ou autre chose) devra servir le index.html et react traitera votre application à partir d'ici. Ce qui signifie cette réaction évaluera les routes et décidera de la vue à rendre.

Par conséquent, vous devez vous assurer que lorsqu'un utilisateur effectue un itinéraire comme /accounts/me, les serveurs servent votre application frontend (react) si nécessaire, mais quelque chose comme /api/users/me rendrait les données. C'est juste un exemple.

Une utilisation "normale" serait de gérer vos données (via une API) avec express et l'application (pages et vues) uniquement avec React.

Si vous utilisez le rendu serveur, il devient un peu plus compliqué.

Dans la plupart des cas, oui, vous devrez utiliser les deux.

Edit: il serait plus facile de répondre si votre question était plus spécifique sur votre utilisation et ce que vous voulez faire.

Edit 2: La plupart du temps, ce ne sont pas les mêmes serveurs desservant l'application frontend et L'API (données), si c'est le cas, assurez-vous simplement que l'application est envoyée lorsque certaines routes frappent le service: c'est-à-dire /home, /about (qui sont évidemment-ici - pas des routes api) devrait être send serve index.html comme votre l'application frontend, et React s'occupera des routes pour décider quoi rendre.

40
répondu Cohars 2018-03-16 08:51:20