Support du module Plan de Node.js pour ES6 (ECMAScript 2015)
Question :
Node.js s'appuie actuellement sur Syntaxe CommonJS pour le chargement des modules, laissant aux développeurs des options limitées pour l'utilisation du standard de module ECMAScript 2015. Node.js adoptera-t-il un jour les modules ECMAScript 2015 ?
Réponse :
Oui, Node.js travaille activement à la prise en charge des modules ECMAScript 2015. Cependant, la mise en œuvre a été marquée comme expérimentale et doit être utilisée avec prudence dans les environnements de production.
Progrès du support Node.js :
-
Node .js 13.2.0 et supérieur : Les modules ES sont désormais pris en charge sans indicateur, mais l'implémentation est encore expérimentale.
-
Node.js 13.1.0 et inférieur : L'esm Le chargeur de module peut être utilisé pour fournir une prise en charge du module ES prêt pour la production dans les anciennes versions de Node.js.
Détails de mise en œuvre :
- Node.js implémentera la détection de module basée sur le champ package.type dans package.json.
- L'extension de fichier .cjs peut être utilisée pour importer spécifiquement des modules CommonJS en mode module.
*Chronologie :
-
Avril 2019 :Un PR a été lancé pour améliorer la détection des modules et le comportement de chargement.
-
Janvier 2019 : Node.js 11.6.0 a répertorié les modules ES comme expérimentaux, nécessitant un indicateur pour être activés.
-
Septembre 2017 : Node.js 8.5.0 a introduit la prise en charge des fichiers .mjs derrière un indicateur, avec des plans pour supprimer l'indicateur dans la version v10.0 LTS.
-
Septembre 2017 : La prise en charge initiale des modules ESM a été ajoutée à la branche principale Node.js, activée par le --experimental -indicateur modules.
-
Février 2017 : Node.js a annoncé son intention d'utiliser l'extension de fichier .mjs pour les modules ES6.
-
Octobre 2016 : Un développeur Node.js a décrit les obstacles à l'implémentation des modules ES6 dans Node.js, y compris les différences entre les modules statiques et évalués et la difficulté de détecter les types de modules.
Conclusion :
Node.js s'engage à mettre en œuvre la prise en charge du module ECMAScript 2015, mais le calendrier exact et les détails de mise en œuvre continuent d'évoluer. Les développeurs peuvent suivre la progression du développement et utiliser entre-temps des fonctionnalités expérimentales ou des chargeurs de modules externes pour la prise en charge du module ES.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!