Angular 노트 2
모듈: xx.module.ts구성:xx.component.ts 서비스: xx.service.ts
{{{xx}}: 플러그인 표현식 [xx]: 속성 귀속 (xx): 이벤트 귀속 [(xx)]: 양방향 귀속 |: 파이프
*ngFor: 반복 명령문, 예: *ngIf: 조건 명령문, 예: 이 명령문은 선택한 영웅이 있는 경우에만 HeroDetail 어셈블리를 포함합니다.
속성 명령어: 템플릿에서 일반적인 HTML 속성처럼 보이기 때문에 '속성 명령어' 라고 합니다.구조 명령: 별표(*) 시작
$event
[template](https://angular.cn/api/core/Component#template): ` {{values}}
, keyup ,Angular $event DOM , onKey() 。
src/app/keyup.components.ts (class v.1)
export class KeyUpComponent_v1 {
values = '';
onKey(event: any) { // without type info
this.values += event.target.value + ' | ';
}
}
$이벤트를 전송하는 것은 믿을 수 없는 방법이다. 이벤트 대상을 유형화하는 것은 전체 DOM 이벤트를 방법에 전송하는 것을 반대하는 것이다. 왜냐하면 구성 요소가 템플릿에 대한 정보를 너무 많이 알고 있기 때문이다.알지 말아야 할 HTML의 세부 사항을 더 많이 알고 있을 때만 정보를 추출할 수 있습니다.이것은 템플릿 (사용자가 본 것) 과 구성 요소 (사용자 데이터를 어떻게 처리하는지 응용) 간의 분리 관심 원칙을 위반한다.
$event 。 keyup , 。
src/app/keyup.components.ts (v2)
@Component({
selector: 'app-key-up2',
template: `
{{values}}
`
})
export class KeyUpComponent_v2 {
values = '';
onKey(value: string) {
this.values += value + ' | ';
}
}
: 。 $event 。
생명주기 갈고리:ngOnChanges(),ngOnInit(),ngDoCheck(),ngAfterContentInit(),ngAfterContentChecked(),ngAfterViewInit(),ngAfterViewChecked(),ngOnDestroy()
Angular는
*[ngFor](https://angular.cn/api/common/NgForOf)
같은 방식으로 별표 () 문법의 [template](https://angular.cn/api/core/Component#template)
속성을
요소로 변환합니다. * ({{i}}) {{hero.name}} ({{i}}) {{hero.name}}
`[ngFor](https://angular.cn/api/common/NgForOf)` * * (``) , `` 。 ,`[[ngClass](https://angular.cn/api/common/NgClass)]="[odd](https://angular.cn/api/common/NgForOfContext#odd)"` `` 。
### [](https://angular.cn/guide/structural-directives#microsyntax "Link to this heading")
Angular 、 。 `` :
* `let` [ ](https://angular.cn/guide/structural-directives#template-input-variable), 。 , `hero`、`i` `[odd](https://angular.cn/api/common/NgForOfContext#odd)`。 `let hero`、`let i` `let [odd](https://angular.cn/api/common/NgForOfContext#odd)` `let-hero`、`let-i` `let-odd`。
* `of` `trackby`, (`of` -> `Of`, `trackBy` -> `TrackBy`), (`[ngFor](https://angular.cn/api/common/NgForOf)`) , `[ngForOf](https://angular.cn/api/common/NgForOf)` `[ngForTrackBy](https://angular.cn/api/common/NgForOf#ngForTrackBy)`。 `NgFor` * *, `heroes`, track-by `[trackById](https://angular.cn/api/core/IterableChangeRecord#trackById)`。
* `NgFor` , * * 。 `index` `[odd](https://angular.cn/api/common/NgForOfContext#odd)` `$implicit`( )。
* `let-i` `let-odd` `let i=index` `let [odd](https://angular.cn/api/common/NgForOfContext#odd)=[odd](https://angular.cn/api/common/NgForOfContext#odd)` 。 Angular * * `index` `[odd](https://angular.cn/api/common/NgForOfContext#odd)` 。
* `let-hero` 。 。 Angular `let-hero` `$implicit` , `NgFor` 。
* [API ](https://angular.cn/api/common/NgForOf "API: NgFor") `NgFor` 。
* `NgFor` `[NgForOf](https://angular.cn/api/common/NgForOf)` 。 [NgForOf API ](https://angular.cn/api/common/NgForOf) `[NgForOf](https://angular.cn/api/common/NgForOf)` 。
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.