1.1.0 • Published 7 years ago

zent-select v1.1.0

Weekly downloads
6
License
MIT
Repository
github
Last release
7 years ago

zent-select

这是一个 select 组件

设计

组件分层:主要分成 Select, Popup, Trigger 三个模块

1. Select

核心控制器,主要职责是格式化数据,负责 Popup 和 Trigger 间的数据传输

2. Popup

选项列表弹出层,主要负责展示选项,数据过滤控制

3. Trigger
  • 触发器,暴露给使用者,可以通过 trigger 属性进行配置
  • 核心的 trigger 有 SelectTrigger 和 InputTrigger
  • TagsTrigger 是基于 InputTrigger 扩展出来的拥有多选功能的 trigger
  • 使用者可以自行扩展或开发 trigger
使用方式
<Select>
     <Option value="1">选项一</Option>
     <Option value="2">选项二</Option>
     <Option value="3">选项三</Option>
</Select>
const data = ['选项一', '选项二', '选项三']

<Select data={data}></Select>
const data = [
     {value: 1, text: '选项一'},
     {value: 2, text: '选项二'},
     {value: 3, text: '选项三'}
]

<Select data={data}></Select>

注意:如果 data 和 children 两种方式同时使用,data 会将 children 覆盖,主要是为了可以接收异步数据直接改变 data 属性来改变选项。

输出
{ value: 1, text: '选项一' }

组件API

参数说明类型默认值是否必填
className自定义额外类名string''
prefix自定义前缀string'zent'
data选项数据array[]
placeholder默认提示文案string'请选择'
searchPlaceholder搜索框默认文案string''
emptyText空列表提示文案string'没有找到匹配项'
trigger自定义触发器functionSelect.SelectTrigger
onChange选择变更后回调函数functionnoop
filter过滤条件functionnull
onAsyncFilter过滤条件functionnull
onEmptySelected选中过滤条件为空时的回调functionnoop
onOpen展开时的回调functionnoop

Trigger开发API

参数说明类型默认值是否必填
selectedItems已选择的条目array[]
extraFilter是否自带过滤功能booleanfalse
open是否打开Popupbooleanfalse

Trigger 可以通过调用 this.props.onChange({...}) 通过改变 Popup 的 props 实现参数传递。

ChangeLog

###v0.1.53

onFilter开始弃用,改成filter

1.1.0

7 years ago

1.1.0-beta4

7 years ago

1.1.0-beta3

7 years ago

1.1.0-beta2

7 years ago

1.1.0-beta1

7 years ago

1.0.14

7 years ago

1.0.13

7 years ago

1.0.12

7 years ago

1.0.11

7 years ago

1.0.10

7 years ago

1.0.9

7 years ago

1.0.8

7 years ago

1.0.7

7 years ago

1.0.7-beta2

7 years ago

1.0.7-beta1

7 years ago

1.0.6

7 years ago

1.0.5

7 years ago

1.0.4

7 years ago

1.0.3

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago