PickerView 选择器
PickerView 的功能类似于 Picker ,但它是直接渲染在区域中,而不是弹出窗口。
代码演示
选择器
import { PickerView, WhiteSpace } from 'antd-mobile';
const seasons = [
[
{
label: '2013',
value: '2013',
},
{
label: '2014',
value: '2014',
},
],
[
{
label: '春',
value: '春',
},
{
label: '夏',
value: '夏',
},
],
];
const season = [
{
label: '春',
value: '春',
},
{
label: '夏',
value: '夏',
},
];
const province = [
{
label: '北京',
value: '01',
children: [
{
label: '东城区',
value: '01-1',
},
{
label: '西城区',
value: '01-2',
},
{
label: '崇文区',
value: '01-3',
},
{
label: '宣武区',
value: '01-4',
},
],
},
{
label: '浙江',
value: '02',
children: [
{
label: '杭州',
value: '02-1',
children: [
{
label: '西湖区',
value: '02-1-1',
},
{
label: '上城区',
value: '02-1-2',
},
{
label: '江干区',
value: '02-1-3',
},
{
label: '下城区',
value: '02-1-4',
},
],
},
{
label: '宁波',
value: '02-2',
children: [
{
label: 'xx区',
value: '02-2-1',
},
{
label: 'yy区',
value: '02-2-2',
},
],
},
{
label: '温州',
value: '02-3',
},
{
label: '嘉兴',
value: '02-4',
},
{
label: '湖州',
value: '02-5',
},
{
label: '绍兴',
value: '02-6',
},
],
},
];
class PickerViewExample extends React.Component {
state = {
value: null,
};
onChange = (value) => {
console.log(value);
this.setState({
value,
});
}
onScrollChange = (value) => {
console.log(value);
}
render() {
return (
<div>
<PickerView
onChange={this.onChange}
onScrollChange={this.onScrollChange}
value={this.state.value}
data={seasons}
cascade={false}
/>
<WhiteSpace /><WhiteSpace />
<PickerView
data={season}
cascade={false}
/>
<WhiteSpace /><WhiteSpace />
<PickerView
data={province}
value={['02', '02-1', '02-1-1']}
/>
</div>
);
}
}
ReactDOM.render(<PickerViewExample />, mountNode);
API
属性 | 说明 | 类型 | 默认值 |
---|
data | 数据源 | Array<{value, label}> / Array<Array<{value, label}>> | - |
value | 值, 格式是[value1, value2, value3] , 对应数据源的相应级层 value | Array | - |
cascade | 是否级联 | Boolean | true |
cols | 列数 | Number | 3 |
onChange | 选中后的回调,可使用rc-form | (val): void | - |
prefixCls | prefix class | string | am-picker |
pickerPrefixCls | picker prefix class | string | am-picker-col |
itemStyle | 每列样式 | Object | - |
indicatorStyle | indicator 样式 | Object | - |