Zum Inhalt springen
rdlabo.devdocs

Erste Schritte

Sammelt ion-icon-Namen aus Templates und erzeugt eine addIcons-Registrierung für die Produktion. In der Entwicklung können alle Symbole registriert werden; Produktions-Builds enthalten nur die in Templates gefundenen Symbole.

Dieses Projekt basiert auf ionic-team/ionic-angular-standalone-codemods.

Unterstützte Versionen

  • Node.js >= 22
  • Ionic Angular >= 9.0.0
  • Angular >= 18.0.0
  • TypeScript >= 5.4.0
  • ionicons >= 8.0.0
  • @angular-eslint/template-parser 21 oder 22

Installation

npm install --save-dev \
  @rdlabo/ionic-angular-collect-icons \
  @angular-eslint/template-parser@^21

Verwenden Sie stattdessen @angular-eslint/template-parser@^22, wenn das nutzende Projekt Angular ESLint 22 verwendet. Der Parser ist eine Peer-Abhängigkeit, damit der Collector dieselbe Hauptversion des Angular-Template-Parsers wie das nutzende Projekt verwendet.

Initialisierung

Verdrahten Sie addIcons und erzeugen Sie src/use-icons.ts:

npx @rdlabo/ionic-angular-collect-icons --initialize true

Prüfen Sie, dass src/use-icons.ts vorhanden ist und main.ts oder app.config.ts Produktionssymbole aus dieser Datei sowie Entwicklungssymbole aus ionicons/icons registriert. Die manuelle Einrichtung beschreibt Initialisierung.

Den Build prüfen

  1. Fügen Sie einem Template ein statisches Symbol hinzu, zum Beispiel <ion-icon name="home"></ion-icon>.
  2. Führen Sie npx @rdlabo/ionic-angular-collect-icons aus und prüfen Sie, dass der passende Export in src/use-icons.ts erscheint.
  3. Führen Sie npm run build aus.

Automatisieren Sie den Collector wie unter Verwendung gezeigt mit prebuild. Dynamische [name]-Bindungen werden nicht gesammelt. Registrieren Sie diese Symbole manuell (FAQ).

Dokumentation

  • Initialisierung — automatische oder manuelle Verdrahtung von addIcons.
  • Verwendung — den Collector vor Produktions-Builds ausführen.
  • CLI-Optionen — --dry-run, --initialize, Pfade.
  • FAQ — Tests, Bindungen und main.ts.
  • Migration — Prüfungen für bestehende Anwendungen beim Wechsel von Ionic Angular 8 auf 9.