Commit 7bcdb461487e937084f58f4fc364afc94f237dbd
Committed by
GitHub
1 parent
d33ccd04
fix: 修复当设置apiselect的immediate为false时,默认赋值后取值不正确传入默认options方案 (#2862)
Showing
1 changed file
with
3 additions
and
1 deletions
src/components/Form/src/components/ApiSelect.vue
... | ... | @@ -55,6 +55,7 @@ |
55 | 55 | valueField: propTypes.string.def('value'), |
56 | 56 | immediate: propTypes.bool.def(true), |
57 | 57 | alwaysLoad: propTypes.bool.def(false), |
58 | + options: propTypes.array.def([]), | |
58 | 59 | }, |
59 | 60 | emits: ['options-change', 'change', 'update:value'], |
60 | 61 | setup(props, { emit }) { |
... | ... | @@ -71,7 +72,7 @@ |
71 | 72 | const getOptions = computed(() => { |
72 | 73 | const { labelField, valueField, numberToString } = props; |
73 | 74 | |
74 | - return unref(options).reduce((prev, next: any) => { | |
75 | + let data = unref(options).reduce((prev, next: any) => { | |
75 | 76 | if (next) { |
76 | 77 | const value = get(next, valueField); |
77 | 78 | prev.push({ |
... | ... | @@ -82,6 +83,7 @@ |
82 | 83 | } |
83 | 84 | return prev; |
84 | 85 | }, [] as OptionsItem[]); |
86 | + return data.length > 0 ? data : props.options; | |
85 | 87 | }); |
86 | 88 | |
87 | 89 | watchEffect(() => { | ... | ... |