Screening 筛选控件
筛选表单控件。
何时使用
用于商城或者大型分类的进行想要的组件的筛选和配置,能够实现快捷的分类信息满足对于品类筛选的需求。
代码演示
数据源
绑定数据源。
import React from 'react';
import ReactDOM from 'react-dom';
import { Screening, DataSet } from 'choerodon-ui/pro';
const { ScreeningItem } = Screening;
function handleDataSetChange({ record, name, value, oldValue }) {
console.log(
'[dataset newValue]',
value,
'[oldValue]',
oldValue,
`[record.get('${name}')]`,
record.toData(),
);
}
class App extends React.Component {
ds = new DataSet({
autoCreate: true,
data: [{ wear5: ['kidsOverSize', 'thermalUnderWear'] }],
fields: [
{ name: 'wear0', type: 'object', lookupCode: 'WEAR', label: '衣服分类0' },
{ name: 'wear1', type: 'string', lookupCode: 'WEAR', label: '衣服分类1' },
{ name: 'wear2', type: 'string', lookupCode: 'WEAR', label: '衣服分类2' },
{ name: 'wear3', type: 'string', lookupCode: 'WEAR', label: '衣服分类3' },
{ name: 'wear4', type: 'string', lookupCode: 'WEAR', label: '衣服分类4' },
{ name: 'wear5', type: 'string', lookupCode: 'WEAR', label: '衣服分类5' },
],
events: {
update: handleDataSetChange,
},
});
render() {
return (
<Screening dataSet={this.ds}>
<ScreeningItem name="wear0" />
<ScreeningItem
optionRenderer={({ text, _value, _record }) => `${text}-精品`}
colProps={{ span: 8 }}
name="wear1"
/>
<ScreeningItem name="wear2" />
<ScreeningItem colProps={{ span: 12 }} name="wear3" />
<ScreeningItem name="wear4" />
<ScreeningItem name="wear5" />
</Screening>
);
}
API
Screening
参数 | 说明 | 类型 |
---|---|---|
tagRender | 顶部的 tag 位置的渲染可以自定义已选值的展示 | ({ labelTitle, TagsProps }) => ReactElement |
onChange | 当值改变触发的回调方法 | (value: any, oldValue: any) => void |
ScreeningItem
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
multiple | 初始打开多选 | string | |
name | 绑定指定 field(必填) | string | |
primitiveValue | 原始值效果和使用 filed object 类似 | boolean | false |
onChange | 修改值触发的回调 | string | |
renderer | 整个选择框的渲染 | (props: RenderProps) => ReactNode | |
colProps | 栅格布局配置 | ColProps | |
rowProps | 栅格布局配置 | RowProps | |
optionRenderer | 自定义控制选项的展示 | ({text, value, record}) => ReactElement |
PropsTab
参数 | 说明 | 类型 |
---|---|---|
text | 每个小 tag 展示的内容文本 | string |
label | tag 的小标题 | string |
handleClose | 点击关闭按钮需要触发的方法来删除值 | (key) => void |
key | 当前字段的标记配合 handleClose 以及定义为唯一值 | string |
更多属性请参考 ViewComponent。
当前内容版权归 Choerodon UI 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 Choerodon UI .