CLI generates items in unexpected workspace directories
- Linguagem predominante
- TypeScript
- Estrelas
- 27k
- Forks
- 11.8k
- Merge médio
- 14h 23min
- PRs com merge (30d)
- 162
Descrição
# 🐞 Bug report
### Command
- [x] generate
### Description
In a multi-project workspace, `ng generate` creates items (components, etc.) based on the current directory, rather than `[ProjectRoot]/src/app` or `[ProjectRoot/src/lib`.
In a single-project workspace, the CLI knows to place items inside of `src...`. However, in a multi-project workspace with a `projects/...` directory structure, the developer must navigate to `src/app` or `src/lib` prior to generating the item, or specify its location, such as:
```
cd ./projects/app1/src/app
ng generate component component1
```
or
```
cd ./projects/app1
ng generate component src/app/component1 -module src/app/app
```
The expectation would be to navigate to the root of the project, then generate items in the same manner as a single-project workspace, such as:
```
cd ./projects/app1
ng generate component component1
```
Ideally, developers would not have to worry about where they are within the project directory structure or having to specify the location of the module (particularly in default module configurations).
## 🌍 Your Environment
Angular CLI: 12.2.2
Node: 14.16.0
Package Manager: npm 7.21.0
OS: win32 x64
Angular: 12.2.2
... animations, cdk, cli, common, compiler, compiler-cli, core
... forms, material, platform-browser, platform-browser-dynamic
... router
Package Version
---------------------------------------------------------
@angular-devkit/architect 0.1202.2
@angular-devkit/build-angular 12.2.2
@angular-devkit/core 12.2.2
@angular-devkit/schematics 12.2.2
@schematics/angular 12.2.2
ng-packagr 12.2.0
rxjs 6.6.7
typescript 4.3.5
Guia de contribuição
Direção de pesquisa
Comece reproduzindo os comandos `ng generate component component1` a partir de um workspace com vários projetos, comparando a geração a partir da raiz do projeto com a geração a partir de `src/app` ou `src/lib`. Está concluído quando a geração a partir da raiz do projeto coloca os itens no diretório de código-fonte esperado do projeto e resolve o módulo sem exigir um caminho explícito.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- angular, typescript
- Domínio
- cli, tooling
- Tipo de issue
- Bug
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Estagnada
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 35/100