Skip to content

Commit 2f2b821

Browse files
committed
Update Select with events
1 parent 0ffdb0a commit 2f2b821

File tree

4 files changed

+22
-5
lines changed

4 files changed

+22
-5
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "element-react",
3-
"version": "1.1.6",
3+
"version": "1.1.7",
44
"description": "Element UI for React",
55
"private": false,
66
"main": "dist/npm/es5/index.js",

site/docs/en-US/select.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -465,6 +465,8 @@ render() {
465465
|---------|---------|---------|
466466
| onChange | triggers when the selected value changes | current selected value |
467467
| onVisibleChange | triggers when the dropdown appears/disappears | true when it appears, and false otherwise |
468+
| onRemoveTag | triggers when a tag is removed in multiple mode | removed tag value |
469+
| onClear | triggers when the clear icon is clicked in a clearable Select | - |
468470

469471
### Option Group Attributes
470472
| Attribute | Description | Type | Accepted Values | Default |

site/docs/zh-CN/select.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -451,9 +451,12 @@ render() {
451451
| loading | 是否正在从远程获取数据 | boolean || false |
452452

453453
### Select Events
454-
| 事件名称 | 说明 | 回调参数 | 类型 |
454+
| 事件名称 | 说明 | 回调参数 |
455455
|---------|---------|---------|
456-
| onChange | 选中值发生变化时触发 | 目前的选中值 | function(value, option) |
456+
| onChange | 选中值发生变化时触发 | 目前的选中值 |
457+
| onVisibleChange | 下拉框出现/隐藏时触发 | 出现则为 true,隐藏则为 false |
458+
| onRemoveTag | 多选模式下移除tag时触发 | 移除的tag值 |
459+
| onClear | 可清空的单选模式下用户点击清空按钮时触发 | - |
457460

458461
### Option Group Attributes
459462
| 参数 | 说明 | 类型 | 可选值 | 默认值 |

src/select/Select.jsx

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,7 @@ class Select extends Component {
133133
if (this.props.onVisibleChange) {
134134
this.props.onVisibleChange(state.visible);
135135
}
136+
136137
this.onVisibleChange(state.visible);
137138
}
138139

@@ -700,6 +701,10 @@ class Select extends Component {
700701
if (this.props.onChange) {
701702
this.props.onChange('');
702703
}
704+
705+
if (this.props.onClear) {
706+
this.props.onClear();
707+
}
703708
}
704709
}
705710

@@ -711,7 +716,11 @@ class Select extends Component {
711716

712717
selected.splice(index, 1);
713718

714-
this.setState({ selected });
719+
this.setState({ selected }, () => {
720+
if (this.props.onRemoveTag) {
721+
this.props.onRemoveTag(tag.props.value);
722+
}
723+
});
715724
}
716725
}
717726

@@ -975,7 +984,10 @@ Select.propTypes = {
975984
filterMethod: PropTypes.func,
976985
multiple: PropTypes.bool,
977986
placeholder: PropTypes.string,
978-
onChange: PropTypes.func
987+
onChange: PropTypes.func,
988+
onVisibleChange: PropTypes.func,
989+
onRemoveTag: PropTypes.func,
990+
onClear: PropTypes.func
979991
}
980992

981993
export default ClickOutside(Select);

0 commit comments

Comments
 (0)