Fix numeric values
This commit is contained in:
8
ui.js
8
ui.js
@@ -59,12 +59,16 @@ class ConfigComponent extends Component {
|
|||||||
return !(this.state.inProgress && nextState.inProgress);
|
return !(this.state.inProgress && nextState.inProgress);
|
||||||
}
|
}
|
||||||
|
|
||||||
getValueProp() {
|
getValueProp(out = false) {
|
||||||
switch (this.props.config.type) {
|
switch (this.props.config.type) {
|
||||||
case 'toggle':
|
case 'toggle':
|
||||||
return 'checked';
|
return 'checked';
|
||||||
case 'datetime':
|
case 'datetime':
|
||||||
return 'valueAsNumber';
|
return 'valueAsNumber';
|
||||||
|
case 'range':
|
||||||
|
// Apparently can't render with `valueAsNumber` as preact property,
|
||||||
|
// but can retrieve it back.
|
||||||
|
return out ? 'valueAsNumber' : 'value';
|
||||||
default:
|
default:
|
||||||
return 'value';
|
return 'value';
|
||||||
}
|
}
|
||||||
@@ -73,7 +77,7 @@ class ConfigComponent extends Component {
|
|||||||
handleChange = async e => {
|
handleChange = async e => {
|
||||||
this.setState({ inProgress: true });
|
this.setState({ inProgress: true });
|
||||||
|
|
||||||
let value = e.target[this.getValueProp()];
|
let value = e.target[this.getValueProp(true)];
|
||||||
|
|
||||||
try {
|
try {
|
||||||
/** @type {Promise<void>} */
|
/** @type {Promise<void>} */
|
||||||
|
|||||||
Reference in New Issue
Block a user