mirror of https://github.com/grafana/grafana.git
				
				
				
			copy props to state to make it visible in the view
This commit is contained in:
		
							parent
							
								
									a4091813bf
								
							
						
					
					
						commit
						8f92e23e98
					
				|  | @ -38,7 +38,33 @@ interface Props { | ||||||
|   datasource: DataSourceSelectItem; |   datasource: DataSourceSelectItem; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| export class QueryOptions extends PureComponent<Props> { | interface State { | ||||||
|  |   relativeTime: string; | ||||||
|  |   timeShift: string; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | export class QueryOptions extends PureComponent<Props, State> { | ||||||
|  |   constructor(props) { | ||||||
|  |     super(props); | ||||||
|  | 
 | ||||||
|  |     this.state = { | ||||||
|  |       relativeTime: props.panel.timeFrom || '', | ||||||
|  |       timeShift: props.panel.timeShift || '', | ||||||
|  |     }; | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   onRelativeTimeChange = event => { | ||||||
|  |     this.setState({ | ||||||
|  |       relativeTime: event.target.value, | ||||||
|  |     }); | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|  |   onTimeShiftChange = event => { | ||||||
|  |     this.setState({ | ||||||
|  |       timeShift: event.target.value, | ||||||
|  |     }); | ||||||
|  |   }; | ||||||
|  | 
 | ||||||
|   onOverrideTime = (evt, status: InputStatus) => { |   onOverrideTime = (evt, status: InputStatus) => { | ||||||
|     const { value } = evt.target; |     const { value } = evt.target; | ||||||
|     const { panel } = this.props; |     const { panel } = this.props; | ||||||
|  | @ -128,8 +154,10 @@ export class QueryOptions extends PureComponent<Props> { | ||||||
|     }); |     }); | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   render = () => { |   render() { | ||||||
|     const hideTimeOverride = this.props.panel.hideTimeOverride; |     const hideTimeOverride = this.props.panel.hideTimeOverride; | ||||||
|  |     const { relativeTime, timeShift } = this.state; | ||||||
|  | 
 | ||||||
|     return ( |     return ( | ||||||
|       <div className="gf-form-inline"> |       <div className="gf-form-inline"> | ||||||
|         {this.renderOptions()} |         {this.renderOptions()} | ||||||
|  | @ -140,9 +168,11 @@ export class QueryOptions extends PureComponent<Props> { | ||||||
|             type="text" |             type="text" | ||||||
|             className="width-6" |             className="width-6" | ||||||
|             placeholder="1h" |             placeholder="1h" | ||||||
|  |             onChange={this.onRelativeTimeChange} | ||||||
|             onBlur={this.onOverrideTime} |             onBlur={this.onOverrideTime} | ||||||
|             validationEvents={timeRangeValidationEvents} |             validationEvents={timeRangeValidationEvents} | ||||||
|             hideErrorMessage={true} |             hideErrorMessage={true} | ||||||
|  |             value={relativeTime} | ||||||
|           /> |           /> | ||||||
|         </div> |         </div> | ||||||
| 
 | 
 | ||||||
|  | @ -152,9 +182,11 @@ export class QueryOptions extends PureComponent<Props> { | ||||||
|             type="text" |             type="text" | ||||||
|             className="width-6" |             className="width-6" | ||||||
|             placeholder="1h" |             placeholder="1h" | ||||||
|  |             onChange={this.onTimeShiftChange} | ||||||
|             onBlur={this.onTimeShift} |             onBlur={this.onTimeShift} | ||||||
|             validationEvents={timeRangeValidationEvents} |             validationEvents={timeRangeValidationEvents} | ||||||
|             hideErrorMessage={true} |             hideErrorMessage={true} | ||||||
|  |             value={timeShift} | ||||||
|           /> |           /> | ||||||
|         </div> |         </div> | ||||||
| 
 | 
 | ||||||
|  | @ -163,5 +195,5 @@ export class QueryOptions extends PureComponent<Props> { | ||||||
|         </div> |         </div> | ||||||
|       </div> |       </div> | ||||||
|     ); |     ); | ||||||
|   }; |   } | ||||||
| } | } | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue