Parcel est un bundler d'applications Web. C'est dans la même catégorie d'outils du webpack, avec une proposition de valeur différente. Parcel promet de faire beaucoup de choses sans aucune configuration, et d'être rapide aussi.
Parcel est un bundler d'applications Web.
C'est dans la même catégorie d'outils queWebpack, avec une proposition de valeur différente.
Son ensemble de fonctionnalités principales comprend
- regroupement d'actifs (JS, CSS, HTML, images)
- zéro fractionnement du code de configuration
- transformation automatique en utilisantBabel,PostCSSet PostHTML
- remplacement du module à chaud
- mise en cache et traitement parallèle pour des builds plus rapides
Parcel promet de faire tout cela sans aucune configuration et d'être rapide aussi.
Installation
Le colis est installé à l'aide deFil:
yarn global add parcel-bundler
ounpm:
npm install -g parcel-bundler
Commencer le colis
Le colis peut être démarré en utilisant
parcel watch index.html
il commencera à rechercher des ressources à partir de la source de la page HTML et remplacera toutes les références traitées par un fichier de sortie.
Vous pouvez également pointer Parcel vers un fichier JS à la place:
parcel watch entry.js
Serveur de développement
Parcel est livré avec un serveur de développement intégré, vous n'avez donc pas à en configurer un. Vous pouvez le démarrer avec:
parcel index.html
Bundle prêt pour la production
Lorsque vous êtes satisfait de votre application et que vous souhaitez créer un ensemble prêt pour la production, exécutez
parcel build index.html
Un bundle de production désactive le remplacement de module à chaud et ne surveille pas vos modifications, il existe une fois le regroupement terminé et utilise un minifier.
Il déclenche également automatiquement leNODE_ENV
variable àproduction
, pour que les bibliothèques génèrent le code de production (par exemple, React etVueutiliser cette convention)
Actifs
JavaScript
Le colis prend en charge les deuxModules ES(import...
) etCommonJS(require...
).
Il effectueFractionnement automatique du code à l'aide d'importations dynamiques.
Qu'est-ce que cela signifie et pourquoi est-ce utile?
Une importation dynamique renvoie unpromesse, et au lieu de charger toutes les dépendances au démarrage de l'application, nous pouvons demander au navigateur de les charger, mais n'exécute que certaines parties de l'application lorsqu'elles sont prêtes.
Ou, nous pouvons demander au navigateur de les charger uniquement lorsque nous en avons besoin, par exemple lorsque l'utilisateur clique sur un lien particulier.
Voirfractionnement de codepour plus de détails.
CSS
Parcel prend en charge les CSS simples, Sass, Less et Stylus.
Vous pouvez écrire votre CSS en utilisantModules CSS.
Se transforme
Lorsque Parcel trouve que vous avez une configuration pour l'un des
- Babel (
.babelrc
) - PostCSS (
.postcssrc
) - PostHTML (
.posthtmlrc
)
il l'utilisera automatiquement dans son processus de regroupement.
Remplacement du module à chaud
Le remplacement de module à chaud (HMR) est une fonctionnalité utile lors de la création d'une application. Lorsque nous sauvegardons une nouvelle copie de CSS ou JavaScript, HMR se charge de mettre à jour le module dans le navigateur, sans rafraîchir l'ensemble de l'application.
C'est cool surtout si votre application a beaucoup d'états que vous devez déclencher pour tester une fonctionnalité spécifique (par exemple «allez dans les paramètres, cliquez sur ceci, tapez cela…»).
Colis vs Webpack
Comparons Parcel au webpack, car c'est si populaire et vous en avez probablement entendu parler ou l'avez utilisé dans un projet. Il est également agréable de connaître les différences même si vous n'en avez jamais utilisé aucune.
webpack vous permet de faire des tonnes de choses, et bien que ce soit très cool, cela signifie également que nous devons le configurer soigneusement pour faire exactement ce que nous voulons.
Parfois lewebpack.config.js
Le fichier pousse à des centaines de lignes, et nous le copions / collons dans le projet suivant, et c'est pénible si nous devons le modifier.
Parcel nous promet de faire beaucoup de ce que Webpack fait, maissans aucune configuration du tout, reposant surconventions sur la configuration.
webpack 4, principalement en réponse au succès de Parcel, a introduit un mode de configuration zéro, avec quelques conventions, plutôt que de toujours nécessiter une configuration.
Alors que webpack ades milliers de plugins, Colis aquelques, mais ils ne sont pas annoncés sur le site, signe que les développeurs de Parcel veulent que nous évitions d'utiliser des plugins jusqu'à ce que nous ne puissions pas vraiment les éviter parce que nous ne pouvons pas nous adapter aux conventions de Parcel, ou pour faire en sorte que Parcel prenne en charge quelque chose qu'il ne sort pas de la boîte.
Lequel devriez-vous utiliser?Je recommanderais Parcel pour les petits projets et Webpack lorsque vous sortez de ses capacités et que vous voulez un contrôle absolu sur tout ce que fait votre bundler de modules.
Plus de tutoriels devtools:
- Introduction à Yeoman
- Bower, le gestionnaire de packages du navigateur
- Introduction aux tests frontaux
- Utilisation de node-webkit pour créer une application de bureau
- VS Code: utilisez les paramètres spécifiques à la langue
- Introduction à Webpack
- Un guide court et simple de Babel
- Une introduction à Yarn
- Présentation du navigateur DevTools
- Formatez votre code avec Prettier
- Gardez votre code propre avec ESLint
- Une liste de trucs et astuces Chrome DevTools
- Tester JavaScript avec Jest
- Comment utiliser Visual Studio Code
- Introduction à Electron
- Parcel, un webpack plus simple
- Une référence Emmet pour HTML
- Le moteur JavaScript V8
- Configuration du code VS
- Configuration de la ligne de commande macOS
- Comment désactiver une règle ESLint
- Comment ouvrir VS Code à partir de la ligne de commande
- Comment configurer le rechargement à chaud sur Electron