使用 Angular 11 CLI 时,当我生成新组件时,我可以指定选项--skip-tests以避免.component.spec.ts在此阶段生成 a 。
ng generate component --name asdf --module app --skip-tests --dry-run
Run Code Online (Sandbox Code Playgroud)
当我生成一个包含新组件(--route选项)的新模块时,我无法指定该--skip-tests选项。
ng generate module --name asdf --module app --route asdf --routing true --skip-tests --dry-run
Run Code Online (Sandbox Code Playgroud)
如果我这样做,我会收到错误:
Unknown option: '--skip-tests'
Run Code Online (Sandbox Code Playgroud)
在这种情况下,是否有另一种方法可以跳过生成测试,或者只是不支持generate module?
--skip-tests该命令不支持ng generate module。
--flat--lint-fix--module--project--route--routing--routing-scope更新:
另一种方法是依次使用两个命令:
ng generate module --name am && ng generate component --name ac --module am --skip-tests --dry-run
Run Code Online (Sandbox Code Playgroud)
&&表示仅当command1 执行成功完成时才执行command2。
请注意,vscode 集成终端不支持 && ,可以在此处找到可能的解决方法
结果应该是这样的:
我使用 Angular CLI 版本 10,但 Angular CLI v11 应该会产生相同的结果。
根据这篇文章,您可以--skip-tests在生成整个项目时添加标志,也可以生成单个组件。从逻辑的角度来看,您不能在模块上应用标志是有道理的,因为模块不是用测试文件生成的。
要对所有未来生成的代码进行更改,请angular.json通过将 加入skipTests:true到原理图部分来修改您的文件。
"schematics": {
"@schematics/angular:component": {
"style": "scss",
"skipTests": true
},
"@schematics/angular:class": {
"skipTests": true
},
"@schematics/angular:directive": {
"skipTests": true
},
"@schematics/angular:guard": {
"skipTests": true
},
"@schematics/angular:module": {
"skipTests": true
},
"@schematics/angular:pipe": {
"skipTests": true
},
"@schematics/angular:service": {
"skipTests": true
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5316 次 |
| 最近记录: |