반응형
@angular-cli를 통해 빠르게 component 생성 시, 원하지 않는 html, css, spec 등의 파일들이 같이 생성이 됩니다.
필요한 파일만 생성하기 위해 옵션을 설정하는 방법입니다.
component 생성 기본
- 예제) Component 생성
$ ng g c test
# ng generate component test 와 같습니다.
저는 루트 디렉터리가 angular_test이기 때문에, angular_test 아래에 test 아래에 css, html, spec.ts, ts 파일들이 생성됐습니다.
근데 저는 component.ts 만 생성되길 원하는데 자꾸 다른 파일들도 같이 생성되니까 하나하나 지우기가 너무 귀찮았어요.
angular.json에서 옵션을 주면 되더라구요.
schematics 옵션 설정
"schematics": {
"@schematics/angular:component": {
"skipTests": true,
"inlineStyle": true,
"inlineTemplate": true
},
"@schematics/angular:service": {
"skipTests": true
}
},
angular.json 중간에 schematics라는 게 보일 거예요.
여기서 component 외에도 interface, module, service 등 다른 것들도 미리 설정할 수 있어요!
사용한 옵션들에 대해서 설명하자면
skipTests
- true일 경우 spec.ts 파일 미생성
- true일 경우 spec.ts 파일 미생성
inlineStyle
- true일 경우 css 파일 미생성
style
옵션을 사용하면 .css, .scss, .sass 등 자신이 원하는 확장명으로 스타일 파일을 생성할 수도 있어요!
inlineTemplate
- true일 경우 html 파일 미생성
json파일에는 사용하지는 않았지만 flat 옵션을 true로 설정하면 자동으로 폴더 생성하는 것을 막아줍니다.
Component 생성했을 때 자동으로 test 폴더가 만들어졌는데 test 폴더가 만들어지지 않고 딱 지정한 경로에 파일들이 생성되는 것입니다.
- true일 경우 html 파일 미생성
$ ng g c test --flat
근데 개인적으로 angular.json 파일에 flat 옵션을 주는 것보다 이렇게 폴더 안 만들고 싶을 때 flat 옵션을 주는 게 낫더라구요.
더 자세한 내용은 하단의 공식 문서를 참고해 주세요.
참고자료
반응형
'Programming > Angular' 카테고리의 다른 글
@ng-bootstrap/ng-bootstrap 설치 시 오류 :: peer @angular/common@"^13.0.0" from @ng-bootstrap/ng-bootstrap@12.1.2 (0) | 2022.07.18 |
---|---|
Angular(Front) + Node.js(Back) 연동하기 (0) | 2022.07.15 |
AngularJS :: control must be defined as 'standalone' in ngModelOptions 오류 해결 (0) | 2022.06.20 |
GitHub Page에 Angular 배포하기 (0) | 2022.06.17 |
AngularJS :: Subscribe Arguments 경고 해결 (0) | 2022.06.16 |