Eu sou um desenvolvedor do Angular 1 que está começando a aprender sobre o Angular 2. Existem muitos tipos diferentes de métodos de estrutura de pastas, dependendo do material de treinamento. Vou listar cada um abaixo e gostaria de receber as opiniões das pessoas sobre as quais devo usar e por quê. Além disso, se houver um método que não esteja listado, mas você achar que ele funciona melhor, sinta-se à vontade para listá-lo também.
Ao olhar para todos eles, o método 3 é como eu estava fazendo meus aplicativos Angular 1.
Método 1: início rápido do angular2
Fonte: https://angular.io/guide/quickstart
Estrutura da pasta:
Método 2: ng-book2
Fonte: https://www.ng-book.com/2/ (tem que pagar para ver os arquivos)
Estrutura da pasta:
Método 3: mgechev / angular2-seed
Fonte: https://github.com/mgechev/angular2-seed
Estrutura da pasta:
Respostas:
A diretriz oficial está lá agora.
mgechev/angular2-seed
também tinha alinhamento. veja # 857 .https://angular.io/guide/styleguide#overall-structural-guidelines
fonte
index.ts
arquivo? é destinado ao roteamento?Eu acho que estruturar o projeto por funcionalidades é um método prático. Torna o projeto escalável e fácil de manter. E isso faz com que cada parte do projeto trabalhe em total autonomia. Deixe-me saber o que você pensa sobre essa estrutura abaixo: ESTRUTURA DE PROJETO DE TIPESCRIÇÃO ANGULAR - ANGULAR 2
fonte: http://www.angulartypescript.com/angular-typescript-project-structure/
fonte
Eu vou usar este. Muito semelhante ao terceiro mostrado por @Marin.
fonte
mgechev/angular2-seed
github em três dos meus projetos. É fantástico!!!Então, depois de fazer mais investigações, acabei indo com uma versão ligeiramente revisada do método 3 (mgechev / angular2-seed).
Basicamente, mudei os componentes para um diretório de nível principal e, em seguida, cada recurso estará dentro dele.
fonte
Talvez algo como esta estrutura:
fonte
Ultimamente, tenho usado o ng cli e foi muito difícil encontrar uma boa maneira de estruturar meu código.
O mais eficiente que vi até agora vem do repositório mrholek ( https://github.com/mrholek/CoreUI-Angular ).
Essa estrutura de pastas permite manter seu projeto raiz limpo e estruturar seus componentes, evitando a convenção de nomenclatura redundante (às vezes inútil) do Guia de estilo oficial.
Além disso, essa estrutura é útil para agrupar a importação quando necessário e evitar 30 linhas de importação para um único arquivo.
fonte
Se o projeto for pequeno e permanecer pequeno, eu recomendaria estruturar por tipo (Método 2: ng-book2)
Se o projeto crescer, você deve estruturar suas pastas por domínio (Método 3: mgechev / angular2-seed)
Melhor seguir documentos oficiais.
https://angular.io/guide/styleguide#application-structure-and-ngmodules
fonte
Sugiro a seguinte estrutura, que pode violar algumas convenções existentes.
Eu estava me esforçando para reduzir a redundância de nomes no caminho e tentando manter os nomes curtos em geral.
Portanto, não há / app / components / home / home.component.ts | html | css.
Em vez disso, fica assim:
fonte