Хотя вы можете передавать --flat=false
каждый раз, когда выполняете ng generate
, так что каталог создается на основе имени службы / канала / директивы, вы можете переопределить параметры схемы по умолчанию, такие как flat
на уровне проекта, вangular.json
, чтобы избежать необходимости каждый раз передавать параметр --flat=false
в командной строке.Например, чтобы установить flat
в false
при выполнении ng g service services/MyService
, вы добавили бы дополнительное свойство @schematics/angular:service
в свойство schematics
соответствующего проекта в angular.json
:
...
"projects": {
"sample-angular": {
"root": "",
"sourceRoot": "src",
"projectType": "application",
"prefix": "app",
"schematics": {
"@schematics/angular:service": {
"flat": false
}
},
...
}
После добавления этого переопределения, запустив команду ng g service services/MyService
, вы получите следующий вывод:
CREATE src/app/services/my-service/my-service.service.spec.ts (349 bytes)
CREATE src/app/services/my-service/my-service.service.ts (138 bytes)
Вы можете переопределить любую нужную вам схему, будь то для труб, служб, компонентов, модулей илиДирективы.Вы можете увидеть параметры схемы по умолчанию в /node_modules/@angular/cli/lib/config/schema.json
.Существует несколько опций, и вы можете точно настроить то, что вы хотите сгенерировать и как избежать необходимости запоминать и передавать опции в командную строку.
Если у вас есть несколько проектов, вы можете создать свойство schematics
на том же уровне, что и projects
, чтобы переопределить параметры схемы для всех проектов.
Надеюсь, это поможет!