const templateB = ` ‹div class="b"› ‹div› ‹h3›{{name}}‹/h3› ‹p›My parent is {{parent?.name}}‹/p› ‹/div› ‹carol›‹/carol› ‹chris›‹/chris› ‹/div›`; @Component({ selector: 'barry', template: templateB, providers: [{ provide: Parent, useExisting: forwardRef(() => BarryComponent) }] }) export class BarryComponent implements Parent { name = 'Barry'; constructor( @SkipSelf() @Optional() public parent: Parent ) { } }