Ich habe diesen Fehler seit zwei Wochen, als ich versuchte, eine Glut-App in der Produktion zu bauen. Es in Dev-Umgebung zu bauen funktioniert gut. Mir wurde auch klar, dass das Deaktivieren von minifyJs in ember-cli-build den Fehler verhindert, aber dann bleibt die App beim Laden im Browser stecken und in der Konsole sehe ich einen weiteren Fehler: "konnte ember-resolver nicht importieren".
>Meine Vermutung ist, dass dies darauf zurückzuführen ist, dass der UglifyWriter irgendwo keinen Code versteht.
Der vollständige Fehler ist:
Erstellung fehlgeschlagen. Datei: assets / vendor.js (95443: 4) Das Brokkoli-Plugin: [UglifyWriter] ist fehlgeschlagen mit: Error bei neuem JS_Parse_Error (eval at (/home/larisoft/frontend/node_modules/uglify-js/tools/node.js:1:1),: 1545: 18)
%Vor%Das Brokkoli-Plugin wurde instanziiert bei: bei UglifyWriter.Plugin (/home/larisoft/frontend/node_modules/broccoli-plugin/index.js:7:31)
%Vor%mein Paket.json
%Vor%}
Mein ember-cli-build:
%Vor%};
Es scheint, als ob uglify.js einige Probleme mit ES6-Dateien hat: Ссылка . In meinem Fall reichte es aus, eine Bibliothek (fold-to-ascii) auf eine ES5-Version herunterzustufen.
Leider ist eine Fehlermeldung nicht sehr hilfreich, so dass das Auffinden der problematischen Datei unnötig schwierig ist. Es ist schwer zu sagen, welche Datei den Fehler in Ihrem Fall verursacht, aber ich kann zumindest sagen, was mir geholfen hat.
Ich manuell ein Protokoll (mit Hilfe von Ссылка ):
%Vor%in js_error Funktion von node_modules / uglify-js / lib / parse.js (Zeile 205 in meinem Fall), und bekam eine Nachricht, die eigentlich hilfreich war:
%Vor%Dann konnte ich mit der Suche in Pfad Suche nach Text "ASCIIFolder" die problematischen Dateien finden.
Es kann auch erforderlich sein, die Installation von npm- und bower-Paketen zu bereinigen ( Ссылка ) ):
%Vor%Alternativ können Sie die Minimierung von vendor.js mit [ vollständig deaktivieren Ссылка (obwohl es nicht die beste Lösung ist):
%Vor%Dies weist broccoli-uglify-sourceimap an, vendor.js zu ignorieren und sollte daher einen Fehler verhindern.
UPDATE:
Wenn Sie IE9-Browser nicht unterstützen, können Sie [email protected] stable release zur Verkleinerung verwenden.
uglifyjs
hat ein Problem bei der Minimierung der neueren ES-Funktionen. Sie können ember-cli-babili das JavaScript babili in Ember-CLI zu minimieren.
Ich benutze es meine App. Es wird von RWJBlue in seinem Blog ( Ссылка )
erwähnt Ich war solcher Fehler müde, also habe ich uglify-js
durch upglify-es
ersetzt.
Mit yarn
und ember-cli
: