Ich benutze bereits das minify
Argument beim Bauen mit dart2js.Dart - dart2js und weitere Größenoptimierung
Ich schaute auf die Ausgabe und ich sehe, dass die import 'dart:html
Probleme in Bezug auf die Größe der Ausgabedatei verursacht (2kb. Dart-Datei wird 182kb .js-Datei). Zum Beispiel importiert es SVG
Paket, obwohl in meinem Code ich nie berühren <svg>
DOM Elements.
Ich verstehe, dass der Compiler nicht weiß, ob ich svg
DOM-Elemente verwenden werde oder nicht. Und ich verstehe, dass die Verwendung von var
einer der Gründe für dieses Verhalten ist.
Aber wenn ich keine var
Schlüsselwörter verwende, hat der Compiler immer noch nicht genug "Power", um alle nicht verwendeten Pakete und Funktionen zu entfernen.
Gibt es eine Richtlinie, die ich verwenden kann, um den Import bestimmter Pakete zu verbieten? Ich meine jetzt integrierte Pakete. Ich verwende IntelliJ IDEA und es erlaubt mir nicht, etwas in der Dart-Standardkonfiguration zu ändern.
UPD: Versuchte zu verwenden
import 'dart:html' show querySelector, Element
nur diese Methode und Klasse, aber die Dateigröße zu importieren ist 182KB noch.
Die einzige Lösung, die ich für jetzt sehe, ist, ein paar stripped Versionen des Standard-'dart: html 'Pakets zu machen. Der ohne WebGL, SVG und einige andere Funktionen.
Weil vielleicht Dart Compiler funktioniert gut, aber es gibt nur einige Methoden und Klassen, die ich nicht verwende, aber der Code verwendet. Wie die ersten Paketmethoden, die prüfen, ob einige Elemente SVG oder etwas ähnliches sind.
Für andere Zwecke ich eine minimale Arbeits 'dart haben: mit html' Projekt mit' querySelector' Gebäude 'release' die Größe hat '37kb - main.dart.js'. Ein Schritt voraus könnte gegen ein Minimalprojekt sein. –