(function(app) { var ActiveLabelComponent = ng.core.Component({ selector: 'active-label', template: '' + 'Active' + '' }).Class({ constructor: [function() { }], activate: function() { this.active = true; } }); // #docregion content var HeroComponent = ng.core.Component({ selector: 'a-hero', template: '

' + '{{hero.name}} ' + '' + '

', inputs: ['hero'], queries: { label: new ng.core.ContentChild( ActiveLabelComponent) } }).Class({ constructor: [function() { }], activate: function() { this.active = true; this.label.activate(); } }); app.HeroQueriesComponent = HeroComponent; // #enddocregion content // #docregion view var AppComponent = ng.core.Component({ selector: 'heroes-queries', template: '' + '' + '' + '', queries: { heroCmps: new ng.core.ViewChildren( HeroComponent) } }).Class({ constructor: function() { this.heroData = [ {id: 1, name: 'Windstorm'}, {id: 2, name: 'Superman'} ]; }, activate: function() { this.heroCmps.forEach(function(cmp) { cmp.activate(); }); } }); // #enddocregion view app.HeroesQueriesModule = ng.core.NgModule({ imports: [ ng.platformBrowser.BrowserModule ], declarations: [ AppComponent, HeroComponent, ActiveLabelComponent ], bootstrap: [ AppComponent ] }) .Class({ constructor: function() {} }); })(window.app = window.app || {});