Skip to content

颜色选择器 visible受控模式下,onVisibleChange始终返回false #1045

@Bearbearcat

Description

@Bearbearcat

重现链接或代码

import { useState, useRef } from 'react'
import ReactDOM from 'react-dom'
import { ColorPicker } from '@kdcloudjs/kdesign'


function Demo() {
  const [visible, setVisible] = useState(false)
  const inputRef = useRef()

  const onFocus = () => !visible && setVisible(true)
  const onBlur = () => visible && setVisible(false)

  useEffect(()=>{
    const dom = inputRef.current.dom.querySelector('input')
    dom.addEventListener('focus', onFocus )
    dom.addEventListener('blur', onBlur )
    return ()=>{
      dom.removeEventListener('focus')
      dom.removeEventListener('blur')
    }
  })

  const handleChange = (visible) => {
    console.log(visible)
  }

  return (
    <div style={{ width: '350px' }}>
    <ColorPicker ref={inputRef}  visible={visible} onVisibleChange={handleChange }/>
    </div>
  )
}

ReactDOM.render(<Demo />, mountNode)

重现问题步骤

将此代码贴到任一组件的演示代码中,点击 Option A,不会选中。点击 Option B ,Option C也会选中

期望的结果是什么

点击 Option A,会选中。点击 Option B,直选中Option B

实际的结果是什么

组件库版本号、浏览器信息

组件库与浏览器均为最新版本

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions