feat(Picker): custom columns children key (#7791)

This commit is contained in:
晓晓晓晓晓丶vv
2020-12-29 19:53:12 +08:00
committed by GitHub
parent 680c93d103
commit 5d75aabaae
6 changed files with 315 additions and 15 deletions
+58
View File
@@ -258,6 +258,63 @@ export default {
};
```
### Custom Columns Field
```html
<van-picker
:title="Title"
:columns="columns"
:columns-field-names="customFieldName"
/>
```
```js
import { reactive } from 'vue';
export default {
setup() {
const columns = [
{
cityName: 'Zhejiang',
cities: [
{
cityName: 'Hangzhou',
cities: [{ cityName: 'Xihu' }, { cityName: 'Yuhang' }],
},
{
cityName: 'Wenzhou',
cities: [{ cityName: 'Lucheng' }, { cityName: 'Ouhai' }],
},
],
},
{
cityName: 'Fujian',
cities: [
{
cityName: 'Fuzhou',
cities: [{ cityName: 'Gulou' }, { cityName: 'Taijiang' }],
},
{
cityName: 'Xiamen',
cities: [{ cityName: 'Siming' }, { cityName: 'Haicang' }],
},
],
},
];
const customFieldName = {
text: 'cityName',
children: 'cities',
};
return {
columns,
customFieldName,
};
},
};
```
## API
### Props
@@ -265,6 +322,7 @@ export default {
| Attribute | Description | Type | Default |
| --- | --- | --- | --- |
| columns | Columns data | _Column[]_ | `[]` |
| columns-field-names | custom columns field | _object_ | `{ text: 'text', values: 'values', children: 'children' }` |
| title | Toolbar title | _string_ | - |
| confirm-button-text | Text of confirm button | _string_ | `Confirm` |
| cancel-button-text | Text of cancel button | _string_ | `Cancel` |