虽然您可以在--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
以覆盖所有项目的原理图选项。
希望这会有所帮助!