Skip to content

bugfix(search-select): value-behavior="need-key"时,使用拼音输入有多种异常问题 #2679

@JoJohw

Description

@JoJohw

Version / Branch / tag
2.0.2-beta.88 估计之前的版本也有该问题

出了什么问题?(What Happened?)

Image

bk-searchSelect配置了value-behavior="need-key",使用拼音输入,直接回车,会出现以下几种问题

  1. values变成key了
Image
  1. 拼音跑到key前面了,且拼音没有作为value
Image
  1. 这个场景是多按了几个回车导致的换行,概率性触发(有时候多按几次回车也会变成第一种情况)
Image
  1. 输入完拼音回车,发现没有生成value,继续输入拼音后多次回车
Image

如何复现?(How to reproduce?)
【复现步骤】

  1. 配置value-behavior="need-key"
  2. 点击searchSelect组件,弹出searchSelect的下拉面板时,不选择key
  3. 切换到中文,拼音输入(example: ceshi),这时候不要选中拼音的文字,而是直接回车
  4. 回车与拼音的自由组合,可能会造成上面的几种问题

【复现demo】
Image

<bk-searchSelect
v-model="keyword"
:data="searchSelectOptions"
unique-select
value-behavior="need-key"

<script lang="ts" setup> import { ref } from 'vue'; const keyword = ref([]); const searchSelectOptions = [ { name: '用户名', id: 'username', }, { name: '姓名', id: 'full_name', }, { name: '邮箱', id: 'email', }, { name: '手机号', id: 'phone', }, ]; </script>

预期结果(What you expect?)
应该:
若配置了value-behavior="need-key",拼音输入未选中文字直接回车,应该生成key-value Tag
不应该:

  1. 拼音跑到key前面,而不生成key - value的Tag
  2. 拼音输入回车,直接生成key - key的Tag

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions