@kne/react-industry-select
v0.2.13
Published
行业选择器
Downloads
47
Keywords
Readme
react-industry-select
描述
行业选择器
安装
npm i --save @kne/react-industry-select
概述
行业选择器,可支持多选和单选,可以通过覆盖preset的apis的方法扩展此组件
示例
示例代码
- 行业类别多选
- 多选
- IndustrySelect(@kne/react-industry-select),Antd(antd)
const {createIndustrySelect,DisplayIndustry}=IndustrySelect;
const {Button}=Antd;
const {useState}=React;
const BaseExample = ()=>{
const [v,setV]=useState([{label:'xxx',value:"001001"},{label:'xxx',value:"420"}]);
return <Button onClick={()=>{
createIndustrySelect({
labelInValue:true,
defaultValue:v,
size:3,
onChange:(code,item)=>{
setV(code);
}
})
}}>
<DisplayIndustry id={v.map(item=>item.value)}>{(list)=>{
if(Array.isArray(list)){
return list.map(item=>item.chName).join(",")
}
return list&&list.chName
}}</DisplayIndustry>
</Button>
};
render(<BaseExample />);
- 行业类别单选
- 单选
- IndustrySelect(@kne/react-industry-select),Antd(antd)
const {createIndustrySelect,DisplayIndustry}=IndustrySelect;
const {Button}=Antd;
const {useState}=React;
const BaseExample = ()=>{
const [v,setV]=useState(["0028"]);
return <Button onClick={()=>{
createIndustrySelect({
defaultValue:v,
size:1,
selectLevel: 2,
onChange:(code)=>{
setV(code);
}
})
}}>
<DisplayIndustry id={v}>{(list)=>{
if(Array.isArray(list)){
return list.map(item=>item.chName).join(",")
}
return list&&list.chName
}}</DisplayIndustry>
</Button>
};
render(<BaseExample />);
- 行业类别多选
- 多选层级
- IndustrySelect(@kne/react-industry-select),Antd(antd)
const {createIndustrySelect,DisplayIndustry}=IndustrySelect;
const {Button}=Antd;
const {useState}=React;
const BaseExample = ()=>{
const [v,setV]=useState([{label:'xxx',value:"007"}]);
return <Button onClick={()=>{
createIndustrySelect({
labelInValue:true,
defaultValue:v,
size:3,
selectLevel: 2,
onChange:(code)=>{
setV(code);
}
})
}}>
<DisplayIndustry id={v.map(item=>item.value)}>{(list)=>{
if(Array.isArray(list)){
return list.map(item=>item.chName).join(",")
}
return list&&list.chName
}}</DisplayIndustry>
</Button>
};
render(<BaseExample />);
API
其他属性参考antd modal的props
|属性名|说明|类型|默认值| | --- | --- | --- | --- | | title | 模态框标题 | string | - | | size | 支持多选 | boolean | 1 | | defaultValue | 默认选中项 | array | - | | onChange | 选中触发事件 | function(value) | - | | labelInValue | value是否包含label | boolean | false |
IndustrySelect.createIndustrySelect
参数同上
IndustrySelect.DisplayIndustry
这是一个组件
|属性名|说明|类型|默认值| | --- | --- | --- | --- | | id | 选中的项的id,数组格式 | array | - | | children | id是数组返回的也是数组,id是字符串,返回的是对象 | function({list}=>{}) | - |
preset
| 属性名 | 说明 | 类型 | 默认值 | |--------------|-----------------------|--------|-----| |options| 需要覆盖的参数,具体参数参考下面api部分 |object|-|
api
| 属性名 | 说明 | 类型 | 默认值 | |-------------------------|-----------------------|--------|-----| | loadData | 获取行业数据,默认采用内置数据|function|-| | getAllList |获取所有行业数据列表|function|-| | getLeftList |获取左侧一级行业列表|funciton|-| | getAllRightList |获取包含一级二级数据列表|function|-| | getIndustry(id) |传入行业ID返回行业数据|function|-| | getIndustryByName(name) |传入行业name返回行业数据|function|-| | getChildById(id) |通过一级id,获取二级行业|function|-| | searchIndustries(searchStr) |通过关键字搜索行业,支持拼音首字母缩写|function|-|