king
2023-02-01 61ab22d7b6be46c00e8813b00b2352a52cc252f3
src/menu/stylecontroller/styleInput/index.jsx
@@ -48,10 +48,12 @@
        unit = 'vw'
      } else if (val.indexOf('vh') > -1) {
        unit = 'vh'
      } else if (val === 'auto' && _options.includes('auto')) {
        unit = 'auto'
      }
    }
    let _val = parseInt(val)
    let _val = parseFloat(val)
    if (isNaN(_val)) {
      _val = ''
@@ -81,7 +83,7 @@
        }
      }
      let _val = parseInt(val)
      let _val = parseFloat(val)
      if (isNaN(_val)) {
        _val = ''
@@ -105,7 +107,14 @@
  changeValue = (e) => {
    const { unit } = this.state
    let val = e.target.value
    let _val = parseInt(val)
    if (/\d+\.$|^-$|^-0$/.test(val)) {
      this.setState({
        value: val
      })
      return
    }
    let _val = parseFloat(val)
    
    if (isNaN(_val)) {
      _val = ''
@@ -128,8 +137,14 @@
    const { value } = this.state
    this.setState({unit: val})
    if (value && this.props.onChange) {
      this.props.onChange(`${value}${val}`)
    if (val === 'auto') {
      this.setState({value: ''})
      this.props.onChange('auto')
    } else {
      if (value && this.props.onChange) {
        this.props.onChange(`${value}${val}`)
      }
    }
  }
@@ -138,7 +153,7 @@
    return (
      <div className="style-input-box">
        <Input value={value} addonAfter={
        <Input value={value} disabled={unit === 'auto'} addonAfter={
          options.length > 1 ?
          <Select value={unit} onChange={this.changeUnit}>
            {options.map(item => <Option key={item} value={item}>{item}</Option>)}