# picker-view

> 基础库 1.0.0 开始支持，低版本需做[兼容处理](1003706)。

> __微信 Windows 版__：支持
> 
> __微信 Mac 版__：支持
> 
> __微信 鸿蒙 OS 版__：支持

渲染框架支持情况：Skyline （使用最新 [Nightly](/miniprogram/dev/devtools/nightly.html) 工具调试）、WebView

## 功能描述

嵌入页面的滚动选择器。其中只可放置 [picker-view-column](/miniprogram/dev/component/picker-view-column)组件，其它节点不会显示。

目前滚动过程中 bind:pickstart、bind:pickend 会被触发多次，后续 skyline 升级会修复该问题
skyline支持在 picker-view-column 上设置 indicator-style

## 通用属性


```json
[
  {
    "属性": "value",
    "类型": "Array.<number>",
    "默认值": "",
    "必填": "否",
    "说明": "数组中的数字依次表示 picker-view 内的 picker-view-column 选择的第几项（下标从 0 开始），数字大于 picker-view-column 可选项长度时，选择最后一项。",
    "最低版本": "[1.0.0](1003706)"
  },
  {
    "属性": "mask-class",
    "类型": "string",
    "默认值": "",
    "必填": "否",
    "说明": "设置蒙层的类名",
    "最低版本": "[1.5.0](1003706)"
  },
  {
    "属性": "indicator-style",
    "类型": "string",
    "默认值": "",
    "必填": "否",
    "说明": "设置选择器中间选中框的样式",
    "最低版本": "[1.0.0](1003706)"
  },
  {
    "属性": "bind:change",
    "类型": "eventhandle",
    "默认值": "",
    "必填": "否",
    "说明": "滚动选择时触发change事件，event.detail = {value}；value为数组，表示 picker-view 内的 picker-view-column 当前选择的是第几项（下标从 0 开始）",
    "最低版本": "[1.0.0](1003706)"
  },
  {
    "属性": "bind:pickstart",
    "类型": "eventhandle",
    "默认值": "",
    "必填": "否",
    "说明": "当滚动选择开始时候触发事件",
    "最低版本": "[2.3.1](1003706)"
  },
  {
    "属性": "bind:pickend",
    "类型": "eventhandle",
    "默认值": "",
    "必填": "否",
    "说明": "当滚动选择结束时候触发事件",
    "最低版本": "[2.3.1](1003706)"
  }
]
```

## WebView 特有属性


```json
[
  {
    "属性": "indicator-class",
    "类型": "string",
    "默认值": "",
    "必填": "否",
    "说明": "设置选择器中间选中框的类名",
    "最低版本": "[1.1.0](1003706)"
  },
  {
    "属性": "mask-style",
    "类型": "string",
    "默认值": "",
    "必填": "否",
    "说明": "设置蒙层的样式",
    "最低版本": "[1.5.0](1003706)"
  },
  {
    "属性": "immediate-change",
    "类型": "boolean",
    "默认值": "false",
    "必填": "否",
    "说明": "是否在手指松开时立即触发 change 事件。若不开启则会在滚动动画结束后触发 change 事件。",
    "最低版本": "[2.21.1](1003706)"
  }
]
```

## Bug & Tip

1. `tip`: 滚动时在iOS自带振动反馈，可在系统设置 -> 声音与触感 -> 系统触感反馈中关闭
2. `tip`: indicator-style 属性 skyline 从基础库 [3.3.4](1003706) 开始支持，目前支持 `height`、`border`、`background-color`

## 示例代码

[在开发者工具中预览效果](https://developers.weixin.qq.com/s/5H2mhSmb7UJ0)
