Offcanvas

개발자

‘앵귤러 13’ RC 버전 출시··· “아이비 라이브러리 지원”

2021.10.19 Paul Krill  |  InfoWorld
타입스크립트(TypeScript) 기반 웹 프레임워크의 차기 메이저 버전 ‘앵귤러 13(Angular 13)’이 릴리즈 캔디데이트 단계로 이동했다. 앵귤러 13의 프로덕션 릴리즈는 오는 11월 3일 출시될 예정이다. 

‘아이비(Ivy)’는 앵귤러의 차세대 컴파일 및 렌더링 엔진이다. 앵귤러는 이전 버전인 ‘뷰 엔진(View Engine)’ 지원을 유지하면서, 최근 릴리즈부터 (아이비를) 지원하기 시작했다. 앵귤러 13에서는 아이비 라이브러리가 완전히 지원되고, 뷰 엔진 지원은 제거된다. 
 
ⓒGetty Images

앵귤러 13 릴리즈 캔디데이트의 코드는 깃허브에서 다운로드할 수 있다. 이 밖에 앵귤러 13의 변경사항은 다음과 같다. 

• 타입스크립트 4.4(TypeScript 4.4)를 지원한다. 지난 10월 5일부터 코어에서 타입스크립트 4.4.2 이전 버전은 더 이상 지원되지 않는다. 

• Rxjs(Reactive Extensions for JavaScript) v7 리액티브 프로그래밍 라이브러리가 지원된다. 

min, max, minLength와 같은 기본 유효성 검사기를 동적으로 비활성화하거나 활성화할 수 있다. 

• 단순화된 ViewContainerRef.createComponent API를 통해 구성요소를 동적으로 생성할 수 있다. 

• 오류 메시지가 개선됐다. 

• 영구적인 ‘디폴트로 캐시 빌드(build cache by default)’ 기능을 통해 빌드가 향상됐다. 

• 앵귤러 패키지 포맷 13(Angular Package Format 13)이 추가돼 패키지에서 ‘뷰 엔진’ 코드가 제거됐다. 

• 국제화를 위한 $localize가 안정적인 API로 제공된다. 

• 사용자 지정 조건은 ng_package에서 설정할 수 있다. 

• 새로운 탐색이 진행 중인 탐색을 취소할 때 라우터가 더 이상 브라우저 URL을 대체하지 않는다. 이로 인해 URL 플리커가 발생했으며, 일부 앵귤러JS 하이브리드 애플리케이션만 지원됐다. 라우터에서 navigationId을 사용하는 하이브리드 앱은 NavigationCancel 이벤트를 구독하고, replaceState를 자체적으로 수행하여, 라우터 상태에 navigationId를 추가해야 한다. 

wrappedValue 클래스가 @angular/core에서 더 이상 지원되지 않는다. wrappedValue를 쓰는 라이브러리를 사용하면 런타임 컴파일 오류 또는 장애가 발생할 수 있다. wrappedValue 사용을 제거해야 한다. 

RouterTestingModule에서 사용하는 SpyLocation 동작이 브라우저 동작과 일치하도록 변경됐다. 

• 코어에서 정적 속성 이니셜라이저에 순수 주석이 추가됐다. 코드를 실행하는 이니셜라이저를 포함한 클래스 속성은 모듈 수준 코드와 유사한 문제를 일으킬 수 있다. 잠재적인 문제가 애플리케이션 실행에 영향을 미칠 수 있기 때문에 최적화 프로그램은 이러한 정적 속성을 가진 클래스를 안전하게 제거할 수 없다. 이러한 유형의 정적 속성이 있는 클래스를 최적화하고, 사용하지 않으면 제거할 수 있도록 정적 속성의 이니셜라이저 표현식에 순수 주석을 달 수 있다. 

• 요청 시 오래되거나 손상된 내용이 제공되지 않도록 서비스 작업자 캐시가 안전 작업자에서 삭제된다. 

• 플랫폼 브라우저에서 애니메이션 트리거 누락에 관한 오류 메시지가 개선됐다. 

• 앵귤러 13에서 양식 제어를 위해 가능한 모든 상태 문자열의 조합이자 새로운 타입인 FormControlStatus가 추가됐다. 또 AbstractControl.statusstring에서 FormControlStatus로, StatusChangesObservable<any>에서 Observable<FormControlStatus>로 좁혀졌다. 앵귤러 변경 로그에 따르면 대부분의 애플리케이션은 이러한 새로운 타입을 원활하게 사용할 수 있다. 

• 라우터에서 기본 URL 직렬 변환기가 (쿼리 매개변수의 물음표를 포함하여) 모든 것을 나중에 삭제하여 /path?q=hello?&other=123 탐색에 잘못된 구문 분석이 발생하는 문제를 수정하기 위한 변경 사항이 제안됐다. 이 변경 사항은 올바른 구문 분석을 제공한다. 

• IE11(Internet Explorer) 지원이 제거된다. 

• 컴파일러-cli에서 d.ts 파일의 절대 가져오기에 올바른 모듈 확인 컨텍스트를 사용하도록 하는 변경 사항이 제안됐다. 

• 또한 컴파일러-cli에서 앵귤러 동작이 없는 파일의 증분 빌드에 대한 분석을 건너뛸 수 있게 됐다. 증분 빌드에서 컴파일러는 분석 작업을 다시 수행하지 않기 위해 가능한 한 이전 컴파일의 분석 데이터를 재사용한다. 하지만 앵귤러 동작이 없는 소스 파일의 경우 분석 데이터가 기록되지 않으며, 결과적으로 변경 사항이 없더라도 소스 파일이 빌드마다 재분석된다. 이 커밋은 그러한 소스 파일의 분석을 방지한다. 

• 언어 서비스의 경우 템플릿에서 자동 완성 문자열 리터럴 통합 타입에 관한 지원이 제공된다.

• 라우터에서 누락된 아울렛 이벤트가 RouterOutletContract에 추가된다. 이는 모듈 연합을 통해 구성요소가 동적으로 렌더링될 때 필요하다고 개발팀은 전했다. 
ciokr@idg.co.kr
 
Sponsored
추천 테크라이브러리

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.