mirror of
https://gitee.com/vant-contrib/vant.git
synced 2025-04-06 03:57:59 +08:00
fix(Picker): setColumnValues failed in cascade mode (#6080)
This commit is contained in:
parent
e95e09764a
commit
2abc2f939e
@ -1,5 +1,5 @@
|
||||
// Utils
|
||||
import { createNamespace } from '../utils';
|
||||
import { createNamespace, isObject } from '../utils';
|
||||
import { preventDefault } from '../utils/dom/event';
|
||||
import { BORDER_TOP_BOTTOM, BORDER_UNSET_TOP_BOTTOM } from '../utils/constant';
|
||||
import { pickerProps } from './shared';
|
||||
@ -111,14 +111,9 @@ export default createComponent({
|
||||
cursor = cursor.children[indexes[i]];
|
||||
}
|
||||
|
||||
while (cursor.children) {
|
||||
while (cursor && cursor.children) {
|
||||
columnIndex++;
|
||||
|
||||
this.setColumnValues(
|
||||
columnIndex,
|
||||
cursor.children.map((item) => item[this.valueKey])
|
||||
);
|
||||
|
||||
this.setColumnValues(columnIndex, cursor.children);
|
||||
cursor = cursor.children[cursor.defaultIndex || 0];
|
||||
}
|
||||
},
|
||||
@ -198,7 +193,14 @@ export default createComponent({
|
||||
const column = this.children[index];
|
||||
|
||||
if (column) {
|
||||
column.setOptions(options);
|
||||
if (this.dataType === 'cascade') {
|
||||
// map should be removed in next major version
|
||||
column.setOptions(
|
||||
options.map((item) => (isObject(item) ? item[this.valueKey] : item))
|
||||
);
|
||||
} else {
|
||||
column.setOptions(options);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user