"SyntaxError : Impossible d'utiliser l'instruction d'importation en dehors d'un module" Expliqué et résolu
Dans les projets Node.js, l'erreur "SyntaxError : Cannot utiliser l'instruction d'importation en dehors d'un module" indique qu'une instruction d'importation est utilisée dans un fichier qui n'est pas reconnu comme module ES. Ce problème survient généralement lors de la mise à niveau vers des versions plus récentes de Babel ou Node.js.
Comprendre le problème
Dans Babel 7, le comportement par défaut consiste à interpréter les fichiers avec le Extension .js en tant que modules CommonJS. Les modules ES, en revanche, nécessitent un champ « type » défini sur « module » dans le fichier package.json le plus proche ou un nom explicite avec l'extension .mjs.
Résoudre l'erreur
Il existe deux options pour résoudre cette erreur :
Option 1 : définissez "type" sur "module" dans package.json
Ajoutez le champ "type" suivant à votre fichier package.json :
// package.json { "type": "module" }
Cela interprétera tous les fichiers .js et .mjs comme des modules ES, tandis que les fichiers individuels peuvent toujours être interprétés comme CommonJS en utilisant l'extension .cjs.
Option 2 : utilisez explicitement l'extension Extension .mjs
Nommez explicitement les fichiers qui doivent être traités comme des modules ES avec l'extension .mjs. Tous les autres fichiers portant l'extension .js seront interprétés comme CommonJS par défaut.
Considérations supplémentaires
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!