From c1496674099a7c7949255518e0bb26d332b4f570 Mon Sep 17 00:00:00 2001 From: Casper Lamboo Date: Wed, 7 Mar 2018 14:41:42 +0100 Subject: [PATCH] Only change value of form onblur --- src/interface/FormComponents.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/interface/FormComponents.js b/src/interface/FormComponents.js index a4adba4..1ec24bf 100644 --- a/src/interface/FormComponents.js +++ b/src/interface/FormComponents.js @@ -68,10 +68,15 @@ const _NumberField = ({ name, min, max, muiTheme: { palette }, ...props }, conte value={_.get(context, name.toString())} onChange={(event, value) => { value = parseFloat(value); - if (typeof min === 'number') value = Math.max(value, min); - if (typeof max === 'number') value = Math.min(value, max); context.onChange(name, value); }} + onBlur={() => { + const value = _.get(context, name.toString()); + let newValue = value; + if (typeof min === 'number') newValue = Math.max(newValue, min); + if (typeof max === 'number') newValue = Math.min(newValue, max); + if (newValue !== value) context.onChange(name, newValue); + }} /> ); _NumberField.contextTypes = contextTypes;