似乎是一个旧问题,再次打开。 很难过,但是在:
Angular CLI: 7.3.7
Node: 10.14.1
OS: win32 x64
Angular: 7.2.11
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router, service-worker
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.13.7
@angular-devkit/build-angular 0.13.7
@angular-devkit/build-optimizer 0.13.7
@angular-devkit/build-webpack 0.13.7
@angular-devkit/core 7.3.7
@angular-devkit/schematics 7.3.7
@angular/cdk 7.3.6
@angular/cli 7.3.7
...
ng生成组件仍在忽略angular.json上的默认设置:
"root": "",
"sourceRoot": "src",
"projectType": "application",
"prefix": "ids",
"schematics": {
"@schematics/angular:component": {
"inlineStyle": false,
"inlineTemplate": false,
"spec": false,
"styleext": "scss"
}
},
因此,我需要在每一代组件上设置所有选项。 我唯一的线索是,它在npm install @ ngx / schematics之后再次发生。 就在几天前一切正常!
答案 0 :(得分:1)
您可能已经通过以下命令安装了 @ ngrx / schematics :
ng add @ngrx/schematics --defaultCollection
此命令将使用您首选的数据包管理器安装 @ ngrx / schematics ,更新您的 package.json 并更新您的 angular.json 文件添加以下内容:
"cli": {
"defaultCollection": "@ngrx/schematics"
}
这将扩展标准的angular示意图,并添加通过ng generate
添加NgRx特定文件的功能(例如动作,效果等...)。如果您以前曾对角度项目配置进行过更改(例如使用scss),则应更新原理图条目。
您只需要更改
"schematics": {
"@schematics/angular:component": {
"inlineStyle": false,
"inlineTemplate": false,
"spec": false,
"styleext": "scss"
}
},
到
"schematics": {
"@ngrx/schematics:component": {
"inlineStyle": false,
"inlineTemplate": false,
"spec": false,
"styleext": "scss"
}
},
您将在以下GitHub问题上获得更多信息:https://github.com/ngrx/platform/issues/1036
答案 1 :(得分:0)
删除@ ngxs / schematics(npm卸载@ ngxs / schematics),并从angular.json中删除引用@ ngxs / schematics的最后一个条目,只是使ng-cli组件默认值恢复原状。