king
7 天以前 a1e9b18a4dbfd21e1bf4d5cb60974ac2f0115efd
src/tabviews/zshare/mutilform/mkSwitch/index.jsx
@@ -2,6 +2,8 @@
import PropTypes from 'prop-types'
import { Switch } from 'antd'
import MKEmitter from '@/utils/events.js'
class MKSwitch extends Component {
  static propTpyes = {
    config: PropTypes.object,
@@ -15,11 +17,37 @@
  onChange = (val) => {
    const { config } = this.props
    
    if (val) {
      this.props.onChange(config.openVal)
    } else {
      this.props.onChange(config.closeVal)
    let other = {}
    if (config.subFields) {
      let _val = val ? config.openText : config.closeText
      config.subFields.forEach((n, i) => {
        other[n.field] = _val || ''
        setTimeout(() => {
          MKEmitter.emit('mkFC', 'input', n.uuid, _val || '')
        }, i * 5)
      })
    }
    if (val) {
      this.props.onChange(config.openVal, other)
    } else {
      this.props.onChange(config.closeVal, other)
    }
    this.setState({}, () => {
      if (config.enter === 'tab') {
        MKEmitter.emit('mkFC', 'focus', config.tabUuid)
      } else if (config.enter === 'sub') {
        config.tabUuid && MKEmitter.emit('mkFC', 'focus', config.tabUuid)
        if (config.linkFields || config.subFields || config.controlFields) {
          setTimeout(() => {
            this.props.onSubmit(config.tabUuid, config.errTabUuid)
          }, 1000)
        } else {
          this.props.onSubmit(config.tabUuid, config.errTabUuid)
        }
      }
    })
  }
  componentWillUnmount () {
@@ -33,7 +61,7 @@
    const { defaultChecked } = this.state
    return (
      <Switch checkedChildren={config.openText || ''} unCheckedChildren={config.closeText || ''} defaultChecked={defaultChecked} onChange={this.onChange}/>
      <Switch checkedChildren={config.openText || ''} disabled={config.readonly} unCheckedChildren={config.closeText || ''} defaultChecked={defaultChecked} onChange={this.onChange}/>
    )
  }
}