Jestem programistą Angular 1 i zaczynam uczyć się o Angular 2. Istnieje wiele różnych metod tworzenia struktury folderów w zależności od materiału szkoleniowego. Wymienię każdą z nich poniżej i chciałbym poznać opinie ludzi, z których powinienem skorzystać i dlaczego. Ponadto, jeśli istnieje metoda, której nie ma na liście, ale uważasz, że działa lepiej, możesz ją również wymienić.
Patrząc na to wszystko, metoda nr 3 jest mniej więcej taka, jak robiłem aplikacje w Angular 1.
Metoda 1: angular2-quickstart
Źródło: https://angular.io/guide/quickstart
Struktura folderów:
Metoda 2: ng-book2
Źródło: https://www.ng-book.com/2/ (aby zobaczyć pliki trzeba zapłacić)
Struktura folderów:
Metoda 3: mgechev / angular2-seed
Źródło: https://github.com/mgechev/angular2-seed
Struktura folderów:
Odpowiedzi:
Oficjalne wytyczne są teraz dostępne.
mgechev/angular2-seed
też się z tym zgadzał. patrz # 857 .https://angular.io/guide/styleguide#overall-structural-guidelines
źródło
index.ts
pliku? czy jest przeznaczony do routingu?Myślę, że uporządkowanie projektu według funkcjonalności jest metodą praktyczną. Dzięki temu projekt jest skalowalny i łatwy w utrzymaniu. I sprawia, że każda część projektu działa w całkowitej autonomii. Daj mi znać poniżej, co myślisz o tej strukturze: ANGULAR TYPESCRIPT PROJECT STRUCTURE - ANGULAR 2
źródło: http://www.angulartypescript.com/angular-typescript-project-structure/
źródło
Mam zamiar użyć tego. Bardzo podobny do trzeciego pokazanego przez @Marin.
źródło
mgechev/angular2-seed
teraz z github do 3 moich projektów. To jest fantastyczne!!!Więc po dokładniejszym zbadaniu sprawy, zdecydowałem się na nieco poprawioną wersję metody 3 (mgechev / angular2-seed).
Zasadniczo przeniosłem komponenty do katalogu głównego poziomu, a następnie każda funkcja będzie w nim.
źródło
Może coś takiego jak ta struktura:
źródło
components
ipages
? Na twoim przykładzie, co powinniśmy zachować w folderze module> home> components?angular-folder-structure/src/app/modules/
, otwórz jeden z tych modułów i zbadaj strukturę folderów pojedynczego modułu.Ostatnio używam ng cli i naprawdę ciężko było znaleźć dobry sposób na uporządkowanie kodu.
Najbardziej wydajne, jakie do tej pory widziałem, pochodzi z repozytorium mrholek ( https://github.com/mrholek/CoreUI-Angular ).
Ta struktura folderów pozwala zachować porządek w projekcie głównym i uporządkować komponenty, pozwala uniknąć zbędnych (czasami bezużytecznych) konwencji nazewnictwa oficjalnego przewodnika po stylach.
Ponadto ta struktura jest przydatna do grupowego importu, gdy jest to potrzebne, i pozwala uniknąć 30 linii importu dla pojedynczego pliku.
źródło
Jeśli projekt jest mały i pozostanie mały, polecam uporządkowanie według typu (Metoda 2: ng-book2)
Jeśli projekt będzie się rozwijał, powinieneś uporządkować swoje foldery według domeny (Metoda 3: mgechev / angular2-seed)
Lepiej śledzić oficjalne dokumenty.
https://angular.io/guide/styleguide#application-structure-and-ngmodules
źródło
Proponuję następującą strukturę, która może naruszać niektóre istniejące konwencje.
Starałem się ograniczyć nadmiarowość nazw na ścieżce i ogólnie starałem się, aby nazwy były krótkie.
Nie ma więc / app / components / home / home.component.ts | html | css.
Zamiast tego wygląda to tak:
źródło