"SyntaxError : Impossible d'utiliser l'instruction d'importation en dehors d'un module" dans les projets Node.js
Problème :
Lors de la tentative pour utiliser la dernière version de Babel dans un projet ApolloServer, une "SyntaxError : Impossible d'utiliser l'instruction d'importation en dehors d'un Une erreur "module" se produit. Ce problème se manifeste après le passage de Babel 6 à Babel 7.
Cause :
Node.js version 13.2.0 ou supérieure est requise pour utiliser les instructions d'importation dans les modules. Les versions antérieures de Node.js peuvent ne pas reconnaître les instructions d'importation et générer l'erreur ci-dessus.
Solution :
Option 1 : spécifier le type de module dans Package.json
- Assurez-vous que la dernière version de Node.js est installée (13.2.0 ).
- Ajoutez un champ "type": "module" au fichier package.json parent le plus proche. Cela demande à Node.js d'interpréter tous les fichiers .js et .mjs en tant que modules ES.
// package.json
{
"type": "module"
}
Copier après la connexion
Option 2 : utiliser explicitement l'extension .mjs
- Au lieu d'utiliser l'extension .js pour vos fichiers de module, nommez-les explicitement avec l'extension .mjs. Node.js reconnaîtra automatiquement ces fichiers en tant que modules ES.
Conseils supplémentaires :
- Vérifiez votre configuration Babel pour vous assurer qu'elle est à jour. à ce jour et prend en charge les modules ES.
- Consultez la documentation du package à l'origine du problème pour voir s'il comporte des exigences spécifiques ou des recommandations d'utilisation. importer des instructions dans des projets Node.js.
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!