update @my/lib - 사용자 정의 Angular 회로도를 실행하는 순서는 무엇입니까? 🤹

3120 단어 schematicsangular
Custom Angular 업데이트 회로도는 migrations.json 에 선언된 이름에 따라 알파벳 순서로 실행됩니다.

사용자 지정 Angular 라이브러리를 유지 관리하고 주요 버전을 변경할 때 라이브러리 사용자에게 원활한 마이그레이션 경로를 제공하고 싶습니다. 이를 위해 명령을 실행할 때(예: ng update @my/[email protected] ) 사용자 코드베이스에서 직접 주요 변경 사항을 수정하기 위해 코드 수정을 적용하는 스크립트(일명 Angular custom schematics )를 활용할 수 있습니다.

회로도의 모든 마이그레이션 스크립트는 json 파일, 즉 migrations.json 에 선언됩니다. 그리고 각각은 특정 버전에 할당됩니다(따라서 1.x에서 2.0으로, 2.x에서 3.0으로의 마이그레이션에 대해 다른 회로도를 가질 수 있음).

그러나 동일한 버전(예: 2.0.0)을 대상으로 하는 여러 회로도가 있을 수 있습니다. 회로도의 순서가 중요한 경우 항상 이름의 알파벳 순서로 실행된다는 점에 유의해야 합니다. 그렇기 때문에 lib에 선언된 migrations.json 접두사 규칙에 주의해야 합니다. 예를 들어 numbering -01- , -02- , ...:

{
  "schematics": {
    "migration-v2--01-components": {
      "version": "2.0.0",
      "factory": "./2/component-migration#migrate",
      "description": "Migrate components"
    },
    "migration-v2--02-services": {
      "version": "2.0.0",
      "factory": "./2/services-migration#migrate",
      "description": "Migrate services"
    },
  }
}


JSON의 키 순서가 순서를 결정하는 것이 아니라 키의 알파벳 순서( migration-v2--01-components , migration-v2--02-services )임을 증명하려면 GitHub@angular/cli source code - 이름별로 회로도 정렬을 참조하세요.

좋은 웹페이지 즐겨찾기