在以前的版本中,可以使用 .angular-cli.json 禁用spec.ts,如下所示。 有没有办法用 6.0.0 版本中的 angular.json 来做到这一点?
"defaults": {
"component": {
"spec": false
},
"service": {
"spec": false
},
...
}
在版本“6.0.0”中 *.spec.ts 可以使用 angular.json 禁用
注意:不要忘记将“前缀”属性值“fmyp”和“fmp”更改为您的值。
"schematics": {
"@schematics/angular:component": {
"prefix": "fmyp",
"styleext": "css",
"spec": false
},
"@schematics/angular:directive": {
"prefix": "fmp",
"spec": false
},
"@schematics/angular:module": {
"spec": false
},
"@schematics/angular:service": {
"spec": false
},
"@schematics/angular:pipe": {
"spec": false
},
"@schematics/angular:class": {
"spec": false
}
}
简单的方法是您可以像以前版本一样使用 CLI。
新语法是
ng generate component component-name --skipTests=true
这将创建没有 .spec 文件的组件。 快乐编码:)
方法一:
您还可以在使用 Angular-cli 创建事物时通过添加“--no-spec”来禁用规范生成
ng generate component my-component --no-spec
方法二: 在 angular.json 文件中永久禁用。您可以编辑项目的原理图。
"schematics": {
"@schematics/angular:component": {
"styleext": "scss",
"spec": false
},
"@schematics/angular:class": {
"spec": false
},
"@schematics/angular:directive": {
"spec": false
},
"@schematics/angular:guard": {
"spec": false
},
"@schematics/angular:module": {
"spec": false
},
"@schematics/angular:pipe": {
"spec": false
},
"@schematics/angular:service": {
"spec": false
}
},
编辑2024年: 下面列出的所有方法都适用于角度 15、16 和 17。于 2024 年 5 月进行了测试。
在不更改
angular.json
文件的情况下执行此操作的最简单方法是使用此命令(在 v13 和 v14 中尝试过):
ng generate component test-component --skip-tests true
如果您只想在子文件夹中生成
ts
和 html
文件,那么您需要使用以下命令:
ng generate component test-component --skip-tests true --style none
如果您需要它们而不需要任何子文件夹,请使用以下命令:
ng generate component test-component --skip-tests true --style none --flat
// for ealier versions
ng generate component path/filename --no-spec
// Or
ng generate component path/filename --spec false
// for later versions
ng generate component path/filename --skipTests=true
// Note: path is relative to src/app folder