diff --git a/public/app/plugins/datasource/prometheus/querybuilder/shared/AutoSizeInput.tsx b/public/app/plugins/datasource/prometheus/querybuilder/shared/AutoSizeInput.tsx index a0223f596c7..b5d242a20a1 100644 --- a/public/app/plugins/datasource/prometheus/querybuilder/shared/AutoSizeInput.tsx +++ b/public/app/plugins/datasource/prometheus/querybuilder/shared/AutoSizeInput.tsx @@ -11,19 +11,26 @@ export interface Props extends InputProps { } export const AutoSizeInput = React.forwardRef((props, ref) => { - const { defaultValue = '', minWidth = 10, maxWidth, onCommitChange, onKeyDown, onBlur, ...restProps } = props; - const [value, setValue] = React.useState(defaultValue); - const [inputWidth, setInputWidth] = React.useState(minWidth); + const { defaultValue, minWidth = 10, maxWidth, onCommitChange, onKeyDown, onBlur, ...restProps } = props; + const [value, setValue] = React.useState(''); + const [inputWidth, setInputWidth] = React.useState(0); useEffect(() => { setInputWidth(getWidthFor(value.toString(), minWidth, maxWidth)); }, [value, maxWidth, minWidth]); + useEffect(() => { + setInputWidth(minWidth); + if (defaultValue) { + setValue(defaultValue.toString()); + } + }, [minWidth, defaultValue]); + return ( { setValue(event.currentTarget.value); }}