From 766771b41e903563dff09784384255d2108f6c40 Mon Sep 17 00:00:00 2001 From: Emil Rosenius Pedersen Date: Wed, 15 Jun 2022 09:58:02 +0200 Subject: [PATCH] fix(VSelect): cannot select items with value '0' with keyboard fix(VSelect): items with value 0 not included in counter --- .../vuetify/src/components/VSelect/VSelect.ts | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/packages/vuetify/src/components/VSelect/VSelect.ts b/packages/vuetify/src/components/VSelect/VSelect.ts index 7de1a702775..342ef0fc97a 100644 --- a/packages/vuetify/src/components/VSelect/VSelect.ts +++ b/packages/vuetify/src/components/VSelect/VSelect.ts @@ -155,15 +155,16 @@ export default baseMixins.extend().extend({ return `list-${this._uid}` }, computedCounterValue (): number { - const value = this.multiple - ? this.selectedItems - : (this.getText(this.selectedItems[0]) || '').toString() + let value - if (typeof this.counterValue === 'function') { - return this.counterValue(value) + if (this.multiple) { + value = this.selectedItems + } else { + const text = this.getText(this.selectedItems[0]) + value = (text || text === 0 ? text : '').toString() } - return value.length + return typeof this.counterValue === 'function' ? this.counterValue(value) : value.length }, directives (): VNodeDirective[] | undefined { return this.isFocused ? [{ @@ -650,7 +651,8 @@ export default baseMixins.extend().extend({ this.keyboardLookupLastTime = now const index = this.allItems.findIndex(item => { - const text = (this.getText(item) || '').toString() + const value = this.getText(item) + const text = (value || value === 0 ? value : '').toString() return text.toLowerCase().startsWith(this.keyboardLookupPrefix) })