programing

(방콜론) Angular 표기법

elecom 2023. 6. 7. 22:09
반응형

(방콜론) Angular 표기법

찾았습니다!:Angular Deprecription 문서에서 사용 중인 표기법입니다.

@Input() tpl !: TemplateRef<any>;
@ContentChild(TemplateRef) inlineTemplate !: TemplateRef<any>;

여기서도 똑같은 걸 찾았어요

@Input() id !: string;

다음을 위한 용어(또는 개념)가 무엇인지 잘 모르겠습니다.!:각도 표기법입니다.구글링은 저에게 큰 도움이 되지 않았습니다.Symbol Hound와 Angular Docs를 동일하게 시도했지만 모두 실패했습니다.

만약 누군가가 그것이 어떻게 작동하는지 등을 밝히거나 최소한 의사 링크를 공유할 수 있다면 도움이 될 것입니다.

가지고 계신다면,strictNullChecks그리고 나서 당신이 장식하는 것은 무엇이든.@Input보통 불평을 할 것입니다.예를 들면...

public class MyComponent {

  @Input()
  public myField: string;

  constructor() {}

}

이로 인해 TS가 불만을 제기할 수 있습니다.그 이유는myFieldnull로 선언되지 않았으므로 절대로 로 설정해서는 안 됩니다.null또는undefined동시에 생성자에서 초기화되지 않으므로 초기 값을 얻습니다.undefined.

일반적으로, 이것은 괜찮습니다.우리는 Angular가 시공 직후에 값을 설정할 것이라는 것을 알고 있습니다.필드를 null로 표시할 경우public myField: string?그러면 우리는 처리해야 할 것입니다.this field may be null우리가 그것을 사용하려고 시도할 때 도처에 있는 오류들.

그래서, 타협안으로, 우리는.!Typescript에 "이것이 null/undefined로 초기화되고 있는 것처럼 보이지만 저를 믿으세요, 제가 처리하겠습니다."라고 말하는 필드 선언문.

느낌표!는 필드가 null이 아닌 비정의 필드임을 나타냅니다(Microsoft의 TypeScript 설명서 참조).

대장:필드 이름과 유형 사이의 구분 기호입니다.

언급URL : https://stackoverflow.com/questions/58073841/bang-colon-notation-in-angular

반응형