From c53e8d528f900201df689eaf58f19c08ce5d4a75 Mon Sep 17 00:00:00 2001 From: cl199793 Date: Tue, 10 Sep 2019 16:25:36 +0800 Subject: [PATCH 1/2] Select: Fix tag show value or empty issue --- packages/select/src/option.vue | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/select/src/option.vue b/packages/select/src/option.vue index 3491544537..a343b5b94f 100644 --- a/packages/select/src/option.vue +++ b/packages/select/src/option.vue @@ -153,8 +153,13 @@ }, beforeDestroy() { + const { selected, multiple } = this.select; + let selectedOptions = multiple ? selected : [selected]; let index = this.select.cachedOptions.indexOf(this); - if (index > -1) { + let selectedIndex = selectedOptions.indexOf(this); + + // if option is not selected, remove it from cache + if (index > -1 && selectedIndex < 0) { this.select.cachedOptions.splice(index, 1); } this.select.onOptionDestroy(this.select.options.indexOf(this)); From 8c5dd499475d772e0144ada2ec096d9c11f245bd Mon Sep 17 00:00:00 2001 From: cl199793 Date: Thu, 12 Sep 2019 15:04:37 +0800 Subject: [PATCH 2/2] update docs --- examples/docs/en-US/select.md | 2 +- examples/docs/es/select.md | 2 +- examples/docs/fr-FR/select.md | 2 +- examples/docs/zh-CN/select.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/examples/docs/en-US/select.md b/examples/docs/en-US/select.md index 54efd9cbc9..b7b31bc656 100644 --- a/examples/docs/en-US/select.md +++ b/examples/docs/en-US/select.md @@ -453,7 +453,7 @@ Enter keywords and search data from server. }, mounted() { this.list = this.states.map(item => { - return { value: item, label: item }; + return { value: `value:${item}`, label: `label:${item}` }; }); }, methods: { diff --git a/examples/docs/es/select.md b/examples/docs/es/select.md index 9d76e9d540..77cc383fb0 100644 --- a/examples/docs/es/select.md +++ b/examples/docs/es/select.md @@ -457,7 +457,7 @@ Introduzca palabras y datos para buscar desde el servidor. }, mounted() { this.list = this.states.map(item => { - return { value: item, label: item }; + return { value: `value:${item}`, label: `label:${item}` }; }); }, methods: { diff --git a/examples/docs/fr-FR/select.md b/examples/docs/fr-FR/select.md index 3d6a846c6e..601e5df5dc 100644 --- a/examples/docs/fr-FR/select.md +++ b/examples/docs/fr-FR/select.md @@ -453,7 +453,7 @@ Vous pouvez aller chercher les options sur le serveur de manière dynamique. }, mounted() { this.list = this.states.map(item => { - return { value: item, label: item }; + return { value: `value:${item}`, label: `label:${item}` }; }); }, methods: { diff --git a/examples/docs/zh-CN/select.md b/examples/docs/zh-CN/select.md index 6eaea258bc..2dcce3d7b1 100644 --- a/examples/docs/zh-CN/select.md +++ b/examples/docs/zh-CN/select.md @@ -448,7 +448,7 @@ }, mounted() { this.list = this.states.map(item => { - return { value: item, label: item }; + return { value: `value:${item}`, label: `label:${item}` }; }); }, methods: {