Je commence à travailler avec webpack
avec un node/express
environnement développement d'un ReactJS
côté serveur application rendue avec react-router
. Je suis très confus au sujet du rôle de chaque webpack paquet de dev et de prod (runtime) les environnements.
Voici le résumé de ma compréhension:
webpack
: C'est un package, un outil pour joindre ensemble les différents morceaux de l'un et de l'application web bundle puis dans un seul .fichier js (normalement, bundle.js
). Le fichier résultat est ensuite servi dans un environnement de prod être chargées par l'application et contient tous les composants nécessaires pour exécuter le code. Les caractéristiques comprennent la réduction de code, minifying, etc.
webpack-dev-server
: C'est un paquet qui offre un serveur pour traiter les fichiers du site. Il a également construit une seule .fichier js (bundle.js
) à partir de composants de client, mais qui sert en mémoire. Il a également la possibilité (-hot
) pour la surveillance de tous les fichiers et de construire un nouveau bundle en mémoire en cas de modifications de code. Le serveur est servi directement dans le navigateur (ex: http:/localhost:8080/webpack-dev-server/whatever
). La combinaison de la mémoire de chargement, traitement à chaud et le navigateur de servir, laisser à l'utilisateur d'obtenir l'application de mise à jour sur navigateur lorsque les modifications du code, idéal pour l'environnement de développement.
Si j'ai des doutes sur le texte ci-dessus, je ne suis vraiment pas sûr de savoir le contenu ci-dessous, donc merci de me conseiller si nécessaire
Un problème commun lors de l'utilisation d' webpack-dev-server
avec node/express
que webpack-dev-server
est un serveur, qu'est - node/express
. Que fait cet environnement difficile à exécuter à la fois le client et certains node/express code (une API, etc.). NOTE: C'est ce que j'ai rencontrées, mais serait bien de comprendre pourquoi cela se produit dans plus de détails...
webpack-dev-middleware
: C'est un middleware avec les mêmes fonctions d' webpack-dev-server
(inmemory regroupement, chaud, rechargement), mais dans un format qui peut être injecté à l' server/express
application. De cette façon, vous avez une sorte de serveur ( webpack-dev-server
) initié le nœud du serveur. Oops: Est-ce un rêve fou ??? Comment cette pièce résoudre le dev et prod équation et rend la vie plus simple
webpack-hot-middleware
: Ce... Coincé ici... trouvé cette pièce lors de la recherche d' webpack-dev-middleware
... Aucune idée de comment l'utiliser.
NOTE: est Désolé il n'y a aucune mauvaise pensée. J'ai vraiment besoin d'aide afin de comprendre ces variantes dans un environnement complexe. Si conveninent, s'il vous plaît ajouter plus de paquets de données/qui va construire l'ensemble du scénario.