ng-content의 내용에 액세스하고 싶습니다. 단지 콘텐츠 요소의 수를 얻기 위해 시작하는 것이지만, 나중에 더 많은 awesomeness를 가지기 위해서입니다. 예를 들어어떻게 콘텐츠에 액세스합니까?
는 :
@Component({
selector: 'my-container',
template: `
<div class="my-container">
<div class="my-container-nav"><a class="my-container-previous"></a></div>
<div class="my-container-body">
<div class="my-container-items">
<ng-content></ng-content>
</div>
</div>
<div class="my-container-nav"><a class="my-container-next"></a></div>
</div>
`
})
export class MyContainer implements AfterContentInit {
@ContentChildren(???) containerItems : QueryList<???>;
ngAfterContentInit() {
console.log('after content init: ' + this.containerItems.length);
}
}
나는 컨텐츠의 아이의 형태로서 무엇을 넣을까요?
그들은 무엇이든 될 수 있습니다. ElementRef를 시도했지만 작동하지 않았고 항상 0을 기록했습니다. 사용
예 : 나는 '네 콘텐츠 초기화 후'보고 기대
<my-container>
<div>some content here</div>
<another-component [title]="'another component there'"></another-component>
<div>there's lots of content everywhere</div>
<span>no assumptions would be fair</span>
</my-container>
.
아이들이 통제하는 Angular2 구성 요소입니까? 컴포넌트 인스턴스에 액세스하고 싶습니까?) 아니면 그냥 일반 HTML? – Sjoerd
Sjoerd, 혼합이 될 수 있습니다. 나는 임의의 HTML을 기대하지만 구성 요소도 기대합니다. 그리고 그들이 구성 요소 일 때, 그들은 다른 유형이 될 것입니다. – Richard