Skip to content

Commit

Permalink
feat: Cascader 新增参数 keepFilter,开启效果:当用户选择值之后,继续保留搜索文本,且下拉框保持为搜索的结果
Browse files Browse the repository at this point in the history
  • Loading branch information
翟胜佳 committed Oct 18, 2024
1 parent 823b0ab commit 00b977a
Show file tree
Hide file tree
Showing 7 changed files with 19 additions and 10 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "shineout",
"version": "1.12.24-beta.2",
"version": "1.12.24",
"description": "Shein 前端组件库",
"main": "./lib/index.js",
"module": "./es/index.js",
Expand Down
1 change: 1 addition & 0 deletions site/pages/components/Cascader/cn.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
| finalDismiss | boolean | false | 选择末级节点后是否关闭选项列表 |
| onCollapse | (collapse: boolean) => void || 下拉列表展开/收起回调 |
| onFilter | (text: string) => (data: any) => boolean || onFilter 不为空时,可以输入过滤数据<br />onFilter 如果返回一个函数,使用这个函数做前端过滤<br />如果不返回,可以自行做后端过滤<br />单选状态下支持 |
| keepFilter | boolean | false | 在选择值之后,继续保留搜索文本,且下拉框保持为搜索的结果 |
| height | number | 300 | 下拉列表高度 |
| filterDelay | number | 400 | 毫秒。用户输入触发 fitler 事件的延时 |
| size | string || 尺寸 |
Expand Down
6 changes: 2 additions & 4 deletions site/pages/documentation/changelog/1.x.x.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
# 更新日志

### 1.12.24-beta.2
### 1.12.24

- Cascader 新增参数 keepFilter,开启效果:当用户选择值之后,继续保留搜索文本,且下拉框保持为搜索的结果 (<1.12.24)
- 修复 Input 组件info属性导致拖拽时的高度问题 (<1.12.24)

### 1.12.24-beta.1

- 修复 TreeSelect 组件无法选中 key 为 number 0 选项的问题 (<1.12.24)

### 1.12.23
Expand Down
7 changes: 4 additions & 3 deletions src/Cascader/Cascader.js
Original file line number Diff line number Diff line change
Expand Up @@ -279,16 +279,16 @@ class Cascader extends PureComponent {
}

handleChange(...args) {
const { onChange, onFilter, filterText } = this.props
const { onChange, onFilter, filterText, keepFilter } = this.props
if (this.input) {
this.input.reset()
if (!keepFilter) this.input.reset()
this.input.focus()
}
const [value] = args
this.lastValue = value
onChange(...args)

if (onFilter && filterText) onFilter('')
if (!keepFilter && onFilter && filterText) onFilter('')
}

renderList() {
Expand Down Expand Up @@ -510,6 +510,7 @@ Cascader.propTypes = {
onCollapse: PropTypes.func,
filterText: PropTypes.string,
onFilter: PropTypes.func,
keepFilter: PropTypes.bool,
filterDataChange: PropTypes.any,
firstMatchNode: PropTypes.object,
unmatch: PropTypes.bool,
Expand Down
9 changes: 9 additions & 0 deletions src/Cascader/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -203,6 +203,15 @@ export interface CascaderProps<Item, Value> extends StandardProps, FormItemStand
*/
onFilter?: (text: string) => (data: any) => boolean;

/**
* After selecting the value, the search text is retained
*
* 在选择值之后,已经保留搜索文本
*
* default: false
*/
keepFilter?: boolean;

/**
* Allows all possible matching options to be choosed
*
Expand Down
2 changes: 1 addition & 1 deletion src/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import * as utils from './utils'

declare const __default: {
utils: typeof utils,
version: '1.12.24-beta.2'
version: '1.12.24'
}

export default __default
Expand Down
2 changes: 1 addition & 1 deletion src/index.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Created by scripts/src-index.js.
import * as utils from './utils'

export default { utils, version: '1.12.24-beta.2' }
export default { utils, version: '1.12.24' }
export { utils }
export { setLocale } from './locale'
export { color, style } from './utils/expose'
Expand Down

0 comments on commit 00b977a

Please sign in to comment.