programing

Angular 2+에서 spec.ts 파일 없이 구성 요소를 생성하는 중

topblog 2023. 5. 18. 20:40
반응형

Angular 2+에서 spec.ts 파일 없이 구성 요소를 생성하는 중

내가 새로운 구성 요소를 만들 때마다 Angular 2+에서 spec.ts 파일을 제거할 수 있는 방법이 있습니까?이것이 테스트 목적인 것은 알지만 필요하지 않으면 어떻게 합니까.

이 특정 테스트 파일을 비활성화하기 위한 설정이 있을 수 있습니다.

Angular >=8 CLI에 대해 업데이트됨

한 구성 요소에 대해 다음 명령을 사용합니다.

ng generate component --skip-tests=true component-name

프로젝트의 다음 합니다.angular.json:

{ 
  "projects": {
    "{PROJECT_NAME}": {
      "schematics": {
        "@schematics/angular:component": {
          "skipTests": true
        }
      }
    }
  }
}

프로젝트의 을 위해 합니다.angular.json:

{ 
  "schematics": {
    "@schematics/angular:component": {
      "skipTests": true
    }
  }
}

또는 명령줄을 사용하여

ng config schematics.@schematics/angular:component.skipTests true

< 앵귤러 8

의 용자내 에.angular-cli.json 변수를 spec.component로 합니다.false:

{
   ...
   "defaults" : {
       ...
       "spec": {
           ...
           "component": false
       }
   }
}

또는 를 사용합니다.--spec=false 중 은 다음과 같습니다.

ng generate component --spec=false component-name

Angular 6의 경우

ng config schematics.@schematics/angular.component.spec false

각도 6+경우 다음 명령을 실행합니다.

ng config schematics.@schematics/angular.component.spec false

OR

이것을 당신의 각진.json 파일에 추가하면 당신은 가도 됩니다.

  "schematics": {
    "@schematics/angular": {
      "component": {
        "spec": false
      }
    }
  }

참고: 충돌에 대한 이 검사를 붙여넣기 전에 도움이 되기를 바랍니다.

Angular 7 이상에서는 다음과 같이 작동합니다.

ng generate component componentname --skipTests

또는ng generate component componentname --skipTests=true

angular-cli를 사용할 때는 통과할 수 있는 여러 옵션이 있습니다. 새 요소를 하려면 테트없새성생려면다성됩추를 .--spec=false 예:

ng generate component --spec=false my-component

angular-cli.json에는 기본적으로 사양을 활성화할 유형의 옵션이 있으며, 여기서 동작을 수정할 수 있습니다.

"defaults": {
  "spec": {
    "class": false,
    "component": true,
    "directive": true,
    "module": false,
    "pipe": true,
    "service": true
  }
}

최신 Angular 9 호환

CLI 명령

ng generate component your-component-name --skipTests=true

또는 별칭을 사용합니다.s--skipTests

ng generate component your-component-name -s=true

angular.json 항상 CLI를 사용합니다.

프로젝트의 합니다.projects.your-project-name그 안에서angular.json.

다음은 명령을 사용하여 구성 요소, 클래스, 지침, 파이프서비스대한 파일이 생성되지 않도록 보장합니다.당신은 요구 사항에 따라 선택할 수 있습니다.

{
  ...
  "projects": {
    "your-project-name": {
      ...
      "schematics": {
        "@schematics/angular:component": {
          "style": "scss",
          "skipTests": true
        },
        "@schematics/angular:class": {
          "skipTests": true
        },
        "@schematics/angular:directive": {
          "skipTests": true
        },
        "@schematics/angular:pipe": {
          "skipTests": true
        },
        "@schematics/angular:service": {
          "skipTests": true
        }
      },
    ...
}

:--spec=false이 더 .

및할 수 .angular-cli.json다음과 같이:

"defaults": {
    "component": { "spec": false },
    "service": { "spec": false },
    ...
}

가드 및 클래스 등에 대해서도 사양을 비활성화하기 위해 줄을 추가할 수 있습니다.

그냥 이것을 시도해 보세요.효과가 있습니다

ng g c component_name --spec false

Angular generate "spec" 파일을 기본적으로 비활성화하는 명령이 있습니다.

ng set defaults.class.spec=false
ng set defaults.component.spec=false

업데이트: Angular 6용

ng config schematics.@schematics/angular.component.spec false

Angular 7에서 이 간단한 명령으로 구성요소를 생성하기만 하면 됩니다.

ng g c component-name --spec false

또는 정말로 어떤 구성 요소에도 포함시키고 싶지 않다면 단순히 angular.json을 업데이트하십시오.

"@schematics/angular": {
  "component": {
    "spec": false
  }
}

8: 의경 8우 각도:ng generate component mycomponent --skipTests=false

ng g c component-name --spec false

여기 각도 9에 대한 것이 무엇입니까?

ng g class models\user --skip-tests true

spec.ts 파일을 생성하지 않습니다.

--spec더 이상 작동하지 않습니다.사용하다--skip-tests대신.

다음 명령을 사용하면 모든 옵션이 표시됩니다.

ng g c --help

각 버전 11부터 아래 명령을 사용합니다.

ng generate component "path/componentname" --skip-tests=true

아니면 간단히

ng g c "path/componentname" --skip-tests

수정 #156에 따르면 다음을 사용하여 사양 파일 없이 구성 요소를 생성할 수 있습니다.

ng generate component my-comp --nospec

이 angular. inside angular 6의 경 우 angular.json inside angular.json inside angular.json에 합니다."schematics":{}:

"@schematics/angular": {
  "component": {
    "spec": false
  }
}

OR

프랭클린 피어스가 제안한 대로 다음 명령을 실행합니다.

ng config schematics.@schematics/angular.component.spec false

특정 구성 요소에 대한 사양 파일을 건너뜁니다.

새 버전:

ng generate component "componentName" --skipTests

ng generate component recipe-list --skipTests

이전 버전:

ng generate component "componentName" --spec false

ng generate component recipe-list --spec false

그것은 매우 쉽습니다.구성 요소를 생성하는 동안 추가

--skipTests=true

ng generate component --skipTests=true componentName

또는

ng g c --skipTests=true componentName

각도 8+의 경우 추가하기만 하면 됩니다.

--skipTests=true

마침내.

ng g c component-name --skipTests=true

g는 생성하기 위해 축약됩니다.c는 성분으로 축약됩니다.

사용할 수도 있습니다.

ng generate component component-name --skipTests=true

회신: Angular 2+에서 spec.ts 파일 없이 구성 요소 생성 중

nggc ComponentName --skip-teststrue

프로젝트에서 angular.json 파일로 이동하고 스키마 필드에 spec - false를 추가합니다.

이제 프로젝트를 저장하고 다시 시작하면 사양 파일 없이 모든 구성 요소를 만들 수 있습니다.

 "schematics": {
                "@schematics/angular:component": {
                    "style": "scss",
                    "spec": false
                }
            },

Angular 10+의 경우 - 모든 프로젝트에 대한 전역 설정입니다.

  1. angular.json 파일로 이동합니다.

  2. 스키마 필드에 다음을 추가합니다.

     "@schematics/angular:component": {
       "skipTests": true
     },
    

서비스, 경비원 등도 가능합니다.

    "@schematics/angular:service": {
      "skipTests": true
    },
    "@schematics/angular:guard": {
      "skipTests": true
    }

구성 요소를 생성할 때 다음 명령을 사용할 수 있습니다.

ng g c component-name --spec false

spec.ts 파일을 건너뛰려면 다음 명령도 사용하십시오.

ng g c try-it --skipTests=true

어디에

g c=> component , => 생성합니다.try-it=> , => 구성품명,--skipTest=true=> ==-- spec false.

동일한 문제로 어려움을 겪고 있고 현재 답변을 사용하여 해결할 수 없기 때문에 이 정보를 추가하는 것뿐입니다. 게다가 저는 변경을 하고 싶지 않았습니다.angular-cli.json CLI의 . Angular CLI의 최신 버전이 나타납니다.--spec=false감가상각되어 더 이상 작동하지 않음, 사용--skipTests대신.

테스트 날짜:

Angular CLI: 9.1.1
Node: 12.16.1
OS: win32 x64

다음과 같습니다.ng g c mycomponent --skipTestsng g c mycomponent --spec=false

PS: 항상 다음을 사용하여 명령을 테스트합니다.--dry-run출력을 테스트하는 옵션입니다.

사용 시:

  • Angular CLI: 10.0.3
  • 노드: 12.16.3
  • 각도: 10.0.4

구성 요소를 생성할 때는 "--skip-tests true"를 사용해야 합니다(참고: 터미널에서 "ngv" 또는 "ng-v"를 시도하면 위 버전 정보를 얻을 수 있습니다).

"ng g c --help"를 사용하여 "ng g c (short forging generate component)"에 대한 전체 스위치 목록을 얻을 수 있습니다.

또는 구성 요소를 수동으로 추가할 수 있습니다.이렇게 하려면 프로젝트의 /src/app 폴더를 마우스 오른쪽 단추로 클릭하여 새 폴더를 만듭니다.폴더를 만든 후 마우스 오른쪽 단추로 클릭하여 mycomp.component.html 및 mycomp.component.ts와 같은 하나 이상의 파일을 추가합니다..ts 파일에 인라인 css 및 html을 추가할 수 있으므로 mycomp.component.ts를 추가하는 것이 구성 요소에 필요한 최소 목록입니다.

예:

import { Component } from '@angular/core';

@구성 요소({selector: 'app-mycomp', 템플릿: '<p> Hello Angular </p>' })

MyComp {} 클래스 내보내기

app.module.ts 선언 목록에서 MyComp를 가져오고 등록한 후 selector(선택기)를 사용하여 app.component.html 또는 일부 다른 템플릿에 추가합니다.<app-mycomp></app-mycomp>

각도 < 8 $ ng g component component-name --spec=false

각도 > 8 $ ng g component component-name --skipTests=false --flat

   $ ng g component employee/listEmployees --skipTests=false --flat

그것은 나에게 효과가 있었습니다.angular 11

ng g c posts/new-component --module app --skip-tests

참고:

구성 요소의 이름은 다음과 같아야 합니다.new-component또는newComponent.

특정 폴더에 대해 생성:dir/new-component

더하다new-component에게app.module.ts:--module app

정당하게 사용합니다.--skip-tests를 사용하지 않고 구성 요소를 생성하는 명령으로spec.ts파일

Angular 9의 경우 사용할 수 있습니다.

ng g c "componentName" --spec=false

규격 파일 없이 구성 요소를 생성하는 방법

언급URL : https://stackoverflow.com/questions/40990280/generating-component-without-spec-ts-file-in-angular-2

반응형