diff --git a/src/area/README.md b/src/area/README.md index 72c54c68a..9c10fdb57 100644 --- a/src/area/README.md +++ b/src/area/README.md @@ -64,7 +64,7 @@ To have a selected value,simply pass the `code` of target area to `value` prop | area-list | Area list data | _object_ | - | | columns-placeholder `v2.2.5` | Placeholder of columns | _string[]_ | `[]` | | loading | Whether to show loading prompt | _boolean_ | `false` | -| item-height | Option height | _number \| string_ | `44` | +| item-height `v2.8.6` | Option height, supports `px` ans `rem` unit, default `px` | _number \| string_ | `44` | | columns-num | Level of picker | _number \| string_ | `3` | | visible-item-count | Count of visible columns | _number \| string_ | `5` | | swipe-duration `v2.2.13` | Duration of the momentum animation,unit `ms` | _number \| string_ | `1000` | diff --git a/src/area/README.zh-CN.md b/src/area/README.zh-CN.md index 60ec2a1a7..71f8367e5 100644 --- a/src/area/README.zh-CN.md +++ b/src/area/README.zh-CN.md @@ -64,7 +64,7 @@ Vue.use(Area); | area-list | 省市区数据,格式见下方 | _object_ | - | | columns-placeholder `v2.2.5` | 列占位提示文字 | _string[]_ | `[]` | | loading | 是否显示加载状态 | _boolean_ | `false` | -| item-height | 选项高度 | _number \| string_ | `44` | +| item-height `v2.8.6` | 选项高度,支持 `px` 和 `rem` 单位,默认 `px` | _number \| string_ | `44` | | columns-num | 显示列数,3-省市区,2-省市,1-省 | _number \| string_ | `3` | | visible-item-count | 可见的选项个数 | _number \| string_ | `5` | | swipe-duration `v2.2.13` | 快速滑动时惯性滚动的时长,单位`ms` | _number \| string_ | `1000` | diff --git a/src/datetime-picker/README.md b/src/datetime-picker/README.md index 93de87b90..fa884c5fe 100644 --- a/src/datetime-picker/README.md +++ b/src/datetime-picker/README.md @@ -198,7 +198,7 @@ export default { | loading | Whether to show loading prompt | _boolean_ | `false` | | filter | Option filter | _(type, vals) => vals_ | - | | formatter | Option text formatter | _(type, val) => val_ | - | -| item-height | Option height | _number \| string_ | `44` | +| item-height `v2.8.6` | Option height, supports `px` ans `rem` unit, default `px` | _number \| string_ | `44` | | visible-item-count | Count of visible columns | _number \| string_ | `5` | | swipe-duration `v2.2.13` | Duration of the momentum animation,unit `ms` | _number \| string_ | `1000` | diff --git a/src/datetime-picker/README.zh-CN.md b/src/datetime-picker/README.zh-CN.md index e9db92cbe..15e5155b5 100644 --- a/src/datetime-picker/README.zh-CN.md +++ b/src/datetime-picker/README.zh-CN.md @@ -205,7 +205,7 @@ export default { | loading | 是否显示加载状态 | _boolean_ | `false` | | filter | 选项过滤函数 | _(type, vals) => vals_ | - | | formatter | 选项格式化函数 | _(type, val) => val_ | - | -| item-height | 选项高度 | _number \| string_ | `44` | +| item-height `v2.8.6` | 选项高度,支持 `px` 和 `rem` 单位,默认 `px` | _number \| string_ | `44` | | visible-item-count | 可见的选项个数 | _number \| string_ | `5` | | swipe-duration `v2.2.13` | 快速滑动时惯性滚动的时长,单位`ms` | _number \| string_ | `1000` | diff --git a/src/picker/PickerColumn.js b/src/picker/PickerColumn.js index 60aad747e..bc3ee03df 100644 --- a/src/picker/PickerColumn.js +++ b/src/picker/PickerColumn.js @@ -33,7 +33,7 @@ export default createComponent({ valueKey: String, allowHtml: Boolean, className: String, - itemHeight: [Number, String], + itemHeight: Number, defaultIndex: Number, swipeDuration: [Number, String], visibleItemCount: [Number, String], diff --git a/src/picker/README.md b/src/picker/README.md index 2d40ac899..a2654b023 100644 --- a/src/picker/README.md +++ b/src/picker/README.md @@ -252,7 +252,7 @@ export default { | show-toolbar | Whether to show toolbar | _boolean_ | `false` | | allow-html `v2.1.8` | Whether to allow HTML in option text | _boolean_ | `true` | | default-index | Default value index of single column picker | _number \| string_ | `0` | -| item-height | Option height | _number \| string_ | `44` | +| item-height `v2.8.6` | Option height, supports `px` ans `rem` unit, default `px` | _number \| string_ | `44` | | visible-item-count | Count of visible columns | _number \| string_ | `5` | | swipe-duration `v2.2.10` | Duration of the momentum animation,unit `ms` | _number \| string_ | `1000` | diff --git a/src/picker/README.zh-CN.md b/src/picker/README.zh-CN.md index f3f8c0a95..9d0fdad33 100644 --- a/src/picker/README.zh-CN.md +++ b/src/picker/README.zh-CN.md @@ -275,9 +275,9 @@ export default { | show-toolbar | 是否显示顶部栏 | _boolean_ | `false` | | allow-html `v2.1.8` | 是否允许选项内容中渲染 HTML | _boolean_ | `true` | | default-index | 单列选择时,默认选中项的索引 | _number \| string_ | `0` | -| item-height | 选项高度 | _number \| string_ | `44` | +| item-height `v2.8.6` | 选项高度,支持 `px` 和 `rem` 单位,默认 `px` | _number \| string_ | `44` | | visible-item-count | 可见的选项个数 | _number \| string_ | `5` | -| swipe-duration `v2.2.10` | 快速滑动时惯性滚动的时长,单位`ms` | _number \| string_ | `1000` | +| swipe-duration `v2.2.10` | 快速滑动时惯性滚动的时长,单位 `ms` | _number \| string_ | `1000` | ### Events diff --git a/src/picker/index.js b/src/picker/index.js index cdbb136a4..927f4faf2 100644 --- a/src/picker/index.js +++ b/src/picker/index.js @@ -3,6 +3,7 @@ import { createNamespace, isObject } from '../utils'; import { preventDefault } from '../utils/dom/event'; import { BORDER_UNSET_TOP_BOTTOM } from '../utils/constant'; import { pickerProps } from './shared'; +import { unitToPx } from '../utils/format/unit'; // Components import Loading from '../loading'; @@ -39,6 +40,10 @@ export default createComponent({ }, computed: { + itemPxHeight() { + return unitToPx(this.itemHeight); + }, + dataType() { const { columns } = this; const firstColumn = columns[0] || {}; @@ -277,12 +282,38 @@ export default createComponent({ }, genColumns() { + const { itemPxHeight } = this; + const wrapHeight = itemPxHeight * this.visibleItemCount; + + const frameStyle = { height: `${itemPxHeight}px` }; + const columnsStyle = { height: `${wrapHeight}px` }; + const maskStyle = { + backgroundSize: `100% ${(wrapHeight - itemPxHeight) / 2}px`, + }; + + return ( +