1. Home
  2. Docs
  3. Angular Schematics Tutorial
  4. 6. Rule & Tree

6. Rule & Tree

Przejdźmy do pliku src/http-service/index.ts. To serce naszego Schematic do tworzenia serwisów Http. Tworząc Schematics, operujemy na 3 podstawowych elementach:

Rule

  • funkcja, która bierze Tree jako paramter i najczęściej zwraca nowe Tree
  • może również zwrócić inny Rule lub nic nie zwrócić (void)
  • W @angular/devkit istnieje już wiele dostępnych funkcji zwracających Rule
  • robi całą robotę – wprowadza zmiany do plików, przekazują zmienne do templatki, wołają zewnętrzne narzędzia
  • możemy je łączyć


Rule Factory

  • Rule Factory to Rule podłączony w collection.json, pod nazwą konkretnego Schematic
  • przyjmuje parametr options – są to wartości odebrane od użytkownika w konsoli (wymienione w schema.json)
    Typ Rule:


Tree

  • Tree jest strukturą danych, która reprezentuje listę plików oraz posiada tzw. „staging area”, czyli listę zmian, która zostanie zaaplikowana na pliki. Zmiany są aplikowane poprzez Rules
  • podczas modyfikacji Tree, tak naprawdę nie zmieniamy bezpośrednio listy plików, ale dokonujemy modyfikacji w staging area. Zmiany zostaną dopiero nałożone na koniec.
  • na Tree możemy zaaplikować wiele Rules
  • taką listą plików może być nasz angularowy projekt



Podsumowując, Tree to nasze pliki w projekcie, który modyfikujemy (lub tworzymy nowe), poprzez Rules.