Je suis absolument époustouflé d'avoir ce problème, mais c'est parti. J'obtiens l'erreur dans la console :

Uncaught SyntaxError: Unexpected token {

Sur cette ligne de code dans mon fichier index.js :

import { CountUp } from '/js/count-up.js';

Cette ligne est la première ligne du fichier et mes balises de script sur la page HTML ressemblent à ceci :

<script type="module" src='/js/count-up.js'></script>
<script src='index.js'></script>

Je suis sur un Macbook pro exécutant Mojave et je suis sous Chrome 73.

Je ne sais vraiment pas où je me suis trompé ici, pourquoi ai-je une erreur de syntaxe non détectée lors d'une simple importation de module es6 ?

0
Adam McGurk 18 mars 2019 à 19:13

2 réponses

Meilleure réponse

<script src='index.js'> manque l'attribut type="module", il essaie donc de le charger sans prendre en charge la syntaxe du module ES6 (ce qui est nécessaire pour import).


De côté:

Retirer:

<script type="module" src='/js/count-up.js'></script>

Il vous suffit de charger le point d'entrée de votre programme JS avec un élément <script>. /js/count-up.js est chargé à l'aide de import { CountUp } from '/js/count-up.js';.

6
Quentin 18 mars 2019 à 16:22

Utilisez l'attribut "type" dans votre déclaration de script :

https://github.com/inorganik/countUp.js/

"Inclure dans votre html. Notez l'attribut type"

<script src="./js/countUp.min.js" type="module"></script>
-1
GrafiCode 18 mars 2019 à 16:18