ContentChildren class

Declares a reference to multiple child nodes projected into <ng-content>.

The annotated List is replaced when the DOM is updated.

Example

@Component(
  selector: 'root-comp',
  directives: [TabPanelComponent, TabComponent],
  template: '''
    <tab-panel>
      <tab-comp></tab-comp>
      <tab-comp></tab-comp>
      <tab-comp></tab-comp>
    </tab-panel>
  ''',
)
class RootComponent {}

@Component(
  selector: 'tab-comp',
  template: 'I am a Tab!',
)
class TabComponent {}

@Component(
  selector: 'tab-panel',
  template: '<ng-content></ng-content>',
)
class TabPanelComponent implements AfterContentInit {
  @ContentChildren(TabComponent)
  List<TabComponent> tabs;

  @override
  void ngAfterContentInit() {
    for (var tab in tabs) {
      // Do something.
    }
  }
}

See ViewChildren for a full documentation of parameters and more examples.

Constructors

ContentChildren(Object selector, { bool descendants: true, Object read })
const

Properties

descendants → bool
Whether to query only direct children (false) or all children (true).
final, inherited
first → bool
Whether to only query the first child.
final, inherited
hashCode → int
The hash code for this object. [...]
read-only, inherited
read → Object
The DI token to read from an element that matches the selector.
final, inherited
runtimeType → Type
A representation of the runtime type of the object.
read-only, inherited
selector → Object
Either the class Type or selector String.
final, inherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toString() → String
Returns a string representation of this object.
inherited

Operators

operator ==(dynamic other) → bool
The equality operator. [...]
inherited