Wie man ES6-Funktionen mit gulp-uglify minimiert?

8

Wenn ich schlucke, bekomme ich den folgenden Fehler:

%Vor%

Die fehlerhafte Zeile enthält eine Pfeilfunktion:

%Vor%

Ich weiß, dass ich es durch Folgendes ersetzen kann, um den Minifikationsfehler zu beheben:

%Vor%

Wie kann ich Code mit ES6-Funktionen ausführen, ohne dass die Minimierung fehlschlägt?

    
Don Peat 06.07.2017, 20:23
quelle

4 Antworten

14

Sie können gulp-babel als solche nutzen ...

%Vor%

Dies wird Ihr es6 früh in der Pipeline transpilieren und als weit verbreitetes "einfaches" JavaScript zum Zeitpunkt der Minimierung ausgeben.

Vielleicht ist es wichtig zu beachten - wie in den Kommentaren erwähnt - der Core-Babel-Compiler wird als Peer-Abhängigkeit in diesem Plugin. Falls die Core-Bibliothek nicht über einen anderen Dep in Ihrem Repo heruntergeladen wird, stellen Sie sicher, dass dieser an Ihrem Ende installiert ist.

Betrachten Sie die Peer-Abhängigkeit in gulp-babel , die der Autor angibt @ babel / core (7.x). Der etwas ältere babel-core (6.x) wird aber auch funktionieren. Meine Vermutung ist, dass der Autor (der für beide Projekte identisch ist) gerade dabei ist, seine Modulnamen zu reorganisieren. So oder so, beide npm-Installationsendpunkte zeigen auf Ссылка , damit es Ihnen gut geht eine der folgenden ...

%Vor%

oder

%Vor%     
scniro 06.07.2017, 20:29
quelle
8

Sie können den ES6-Code sogar ohne Transpilation händeln. Verwenden Sie anstelle von gulp-uglify plugin gulp-uglifyes plugin.

%Vor%     
Vladimir Jovanović 14.10.2017 15:51
quelle
8

Die angenommene Antwort beantwortet nicht wirklich wie man gerade es6 verpasst. Wenn Sie es6 ohne transpilieren minimieren möchten, macht gulp-uglify v3.0.0 das möglich:

1.) Aktualisieren Sie zuerst Ihr gulp-uglify-Paket auf & gt; 3.0.0 Wenn Sie Garn verwenden und auf die neueste Version aktualisieren möchten:

%Vor%

2.) Sie können nun uglify-es verwenden, die "es6-Version" von uglify, so:

%Vor%

Weitere Informationen: Ссылка

    
KayakinKoder 16.11.2017 21:29
quelle
1

Leider können Sie leider nicht uglify mit es-next code verwenden. Sie können:

  1. Mit Babel nach ES5 umwandeln
  2. Verwenden Sie Babili anstelle von Uglify .
Hitmands 06.07.2017 20:29
quelle