web-dev-qa-db-fra.com

Aurelia: Webpack, JSPM ou CLI?

Je développe chez Aurelia-CLI depuis environ 3 mois et je l’aime jusqu’à présent. Je pense que c'est un cadre solide et une augmentation du support et de l'utilisation. C'est une bonne chose!

Avant de développer beaucoup plus de ma grande application, je me demande si j'utilise le meilleur système de construction. J'ai seulement essayé Aurelia-CLI et je ne connais pas vraiment Webpack ou JSPM, et par conséquent, je ne sais pas ce qui me manque. Existe-t-il des avantages ou des inconvénients évidents à l’utilisation de l’un des deux autres systèmes de compilation ou l’utilisation de la CLI est-elle l’approche la plus propre et la plus assistée? Depuis que je me développe de façon indépendante, je n’ai aucune contrainte externe.

Merci de votre aide.

22
LStarky

UPDATE

Cette réponse a presque deux ans. N'hésitez pas à rechercher des mises à jour et à fournir une autre réponse plus complète et je peux remplacer cette réponse ou pointer vers cette réponse. Merci!

Aurelia CLI

Aurelia CLI est idéale pour commencer. Il est important de comprendre que sous les couvertures, la CLI utilise require.js, mais met en proxy la configuration via aurelia.json dans votre application. Cela signifie que vous devez comprendre comment configurer aurelia pour fonctionner avec require.js pour le moment. Une fois que vous avez besoin de commencer à configurer en fonction de votre flux de travail ou de modifier les étapes de construction, cela devient un peu lourd pour le moment. Nous travaillons pour améliorer cela. De nombreuses fonctionnalités sont prévues pour Aurelia CLI, mais étant donné qu’au moment de sa rédaction, elle est en état alpha/bêta, elle devrait généralement être utilisée pour la validation de principe ou d’autres applications plus petites, mais pas pour les applications à grande échelle prêtes pour la production.

WebPack

WebPack est sans doute le gamin le plus populaire du moment. WebPack est pas un chargeur de module, mais un bundler. Il est important de comprendre cela car, bien que nous nous efforcions d'optimiser le fonctionnement d'Aurelia avec tous les chargeurs de modules, WebPack n'est pas chargé par défaut du chargement des modules. Par conséquent, une application chargée de manière dynamique demande au développeur de développer cette fonction. WebPack permet de créer des ensembles optimisés et peut être facile à utiliser si vous êtes à l'aise avec la configuration de WebPack. WebPack compte beaucoup plus d'étoiles GitHub en raison de la popularité de React grâce à WebPack, il est difficile de dire si le choix est meilleur lorsque vous utilisez Aurelia simplement en raison du nombre d'étoiles GitHub.

JSPM/System.js

Certains squelettes utilisent JSPM et System.js. La raison en est que ce sont les plus proches des solutions «conformes aux spécifications». JSPM essaie de vous aider autant que possible lors du chargement à partir du Registre JSPM . S'il n'est pas encore disponible dans le registre, vous pouvez charger directement à partir de NPM ou GitHub. Du point de vue du chargement de module, vous utilisez un fichier config.js qui est (généralement) mis à jour automatiquement lors de l’installation de dépendances afin d’améliorer le flux de travail du développeur.

_ {Note biaisée du côté} _

Pour la plupart des applications plus grandes pour le moment, je préfère généralement utiliser JSPM/System.js simplement parce que je comprends très bien l’outillage et que je préfère le contrôle qui m’est fourni. Je travaille sur un grand nombre d'applications Aurelia en production et réserve généralement des CLI pour des applications de preuve de concept plus petites. WebPack est une excellente alternative, mais je préfère la flexibilité et la compréhension que j'ai avec JSPM/System.js pour le moment.

38
PW Kad

La CLI n’est pas encore complète, mais sa configuration est beaucoup plus simple. Webpack peut faire tout ce que vous voulez, mais vous conserverez la configuration de votre Webpack autant que votre code Aurelia. 

Ok, peut-être pas autant, mais vous devrez apprendre Webpack à utiliser Webpack. L’Aurelia CLI est simple à utiliser, mais présente certaines limitations. Par exemple, les fichiers CSS faisant référence à des ressources externes ne fonctionneront pas avec la CLI d'Aurelia, mais ils devraient fonctionner correctement avec Webpack.

9
Ashley Grant

Premièrement, je peux comprendre si cet article est arrêté en raison de son nature subjective

Je pense qu'il est temps de revoir les réponses concernant Aurelia CLI étant un outil de seconde classe. Je respecte les deux PW Kad et Ashley Grant immensément, mais je ne suis tout simplement pas convaincu qu'une affirmation comme celle-ci soit vraie:

De nombreuses fonctionnalités sont prévues pour Aurelia CLI mais, au moment de la rédaction du présent document, Indique que, dans un état alpha/bêta, il convient généralement de Être utilisé pour la validation de principe ou d'autres applications plus petites. pas encore applications à grande échelle prêtes pour la production.

J'ai notamment une application de production de ce type à l'époque où j'ai commencé à utiliser Aurelia CLI et je l'ai modifiée pour JSPM précisément pour les raisons indiquées. Mais récemment, j'ai reconstruit la même application à partir de zéro à l'aide de la CLI et je me suis rendu compte qu'elle était beaucoup plus facile à utiliser, notamment la gestion des modules et la publication! Et ceci est une application avec Google Maps, Google Analytics, Auth0, DevExpress, Bootstrap, etc. 

Pensez qu’il est temps de donner un peu d’amour à Aurelia CLI. C'est prêt.

4
smoore4

Aurelia CLI est l'option la plus privilégiée avec cette annonce. 

http://aurelia.io/blog/2017/08/18/aurelia-cli-webpack-update/

Maintenant, il a plus de flexibilité pour votre choix de préférences.

2
chenk