From 894c06b95521bc605c765908a5f4ac8f31d94bbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jacob=20M=C3=BCller?= Date: Fri, 24 Apr 2020 10:58:56 +0200 Subject: [PATCH] fix: nested form options normalization --- .../form-select/helpers/mixin-options.js | 8 +++--- src/mixins/form-options.js | 28 ++++++++++--------- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/src/components/form-select/helpers/mixin-options.js b/src/components/form-select/helpers/mixin-options.js index b188edeb944..95b1fa4d44a 100644 --- a/src/components/form-select/helpers/mixin-options.js +++ b/src/components/form-select/helpers/mixin-options.js @@ -1,5 +1,5 @@ import get from '../../../utils/get' -import { isArray, isPlainObject, isUndefined } from '../../../utils/inspect' +import { isNull, isPlainObject, isUndefined } from '../../../utils/inspect' import formOptionsMixin from '../../../mixins/form-options' // @vue/component @@ -21,12 +21,12 @@ export default { if (isPlainObject(option)) { const value = get(option, this.valueField) const text = get(option, this.textField) - const options = get(option, this.optionsField) + const options = get(option, this.optionsField, null) // When it has options, create an `` object - if (isArray(options)) { + if (!isNull(options)) { return { label: String(get(option, this.labelField) || text), - options + options: this.normalizeOptions(options) } } // Otherwise create an `