Mercurial > hg > ng2-query-ismi
diff app/query-select.component.ts @ 7:6cd6c09032aa
object type query with results!
author | Robert Casties <casties@mpiwg-berlin.mpg.de> |
---|---|
date | Fri, 15 Jan 2016 20:00:47 +0100 |
parents | 9f5473536a98 |
children | fa646ee46c19 |
line wrap: on
line diff
--- a/app/query-select.component.ts Thu Jan 14 17:19:35 2016 +0100 +++ b/app/query-select.component.ts Fri Jan 15 20:00:47 2016 +0100 @@ -1,8 +1,9 @@ -import {Component, OnInit} from 'angular2/core'; +import {Component, Output, EventEmitter, OnInit} from 'angular2/core'; import {QueryService} from './query.service'; import {QueryMode} from './query-mode'; import {QueryStep} from './query-step'; +import {QueryState} from './query-state'; @Component({ @@ -10,6 +11,7 @@ template: ` <p>Selected option: {{selectedQuery}}</p> <select (change)="onSelectMode($event)"> + <option></option> <option *ngFor="#mode of queryModes" [value]="mode.id"> {{mode.label}} </option> @@ -20,6 +22,7 @@ </option> </select> ` + //outputs: ['queryChanged'] }) export class QuerySelectComponent implements OnInit { @@ -28,6 +31,8 @@ public selectedQuery = 'unknown'; public query2Options; + @Output('queryChanged') queryChanged = new EventEmitter<QueryState>(); + constructor(private _queryService: QueryService) {} ngOnInit() { @@ -37,7 +42,7 @@ setup() { this._queryService.setupIsmiObjectTypes(); this.queryModes = this._queryService.getQueryModes(); - // select first mode + // select first mode (too early?) this.selectedMode = this.queryModes[0]; this.query2Options = this._queryService.getQueryOptions(this.selectedMode); } @@ -52,7 +57,8 @@ var selected = event.target.value; this.selectedQuery = selected; console.debug("selected option:", selected); - var query = {'mode': this.selectedMode, 'objectType': selected}; - this._queryService.setQueryStep(0, query); + var query: QueryStep = {'mode': this.selectedMode, 'objectType': selected}; + this._queryService.setQueryStep(0, query); + this.queryChanged.emit(this._queryService.getState()); } }