import React, { useState, useEffect } from 'react'
import { TreeSelect } from 'antd'
import { useRequest } from 'umi'
import { queryAcountInstitutionList } from '@/services/api/institution'
const { TreeNode } = TreeSelect
const TreeNodeSelect = ({ onChange, placeholder = '请选择', ...otherProps }) => {
const [list, setList] = useState([])
const { run: tryAcountInstitutionList } = useRequest(() => queryAcountInstitutionList(), {
manual: true,
onSuccess: result => {
setList(result)
}
})
useEffect(() => {
tryAcountInstitutionList()
}, [])
const onNodeChange = (value, labelList) => {
console.log('labelList', labelList)
onChange(value, { value, label: labelList[0] })
}
const renderTreeNodes = data =>
data.map(item => {
if (item.children) {
item.disabled = true
return (
{renderTreeNodes(item.children)}
)
}
return
})
return (
list?.length && (
onNodeChange(value, labelList, extra)}
>
{renderTreeNodes(list)}
)
)
}
export default TreeNodeSelect