Value property must be unique / incorrect option passed to onSelect
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 35/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- react, typescript
- Domínio
- frontend
Direção de pesquisa
Comece pelo CodeSandbox vinculado em src/App.js e reproduza a sequência de seleção; depois, rastreie como value e key são usados antes que onSelect receba uma opção. Está concluído quando a seleção de entradas com valores duplicados passa as opções correspondentes com suas chaves, incluindo o caso relatado de id1, id2 e id3.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Demo:
https://codesandbox.io/s/exciting-bird-x7m1kf?file=/src/App.js
Steps to reproduce:
- Click to input, dropdown opens;
- Click on first option;
- Click to input again;
- Click on second option;
- Observe console output
Expected behavior:
After first click, option with 'key: "id1"' should be passed to onSelect. After second click, option with 'key: "id2"' should be passed to onSelect
Actual behavior:
Same option is passed to onSelect (id3) regardless which option I select.
Comment:
It's not stated anywhere that value prop must be unique, which in many cases is not satisfying - movies, companies, books etc. can have same name but unique ID. In my case, same values might have highlighted different parts of string - I can not use options prop. I also can not pass id to value, since I need backfill.
One possible solution would be to keep uniqueness only to keys. Other (which will solve only my case) to do backfill with different prop - title, label or something else and fill it with value as a backup.
- Linguagem predominante
- TypeScript
- Estrelas
- 938
- Forks
- 482
- Merge médio
- 15h 8min
- PRs com merge (30d)
- 2
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de react-component/select
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
react-component/select#1216 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 45/100
react-component/select#1159 ·
-
a11y 问题 Aberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 35/100
react-component/select#1087 · 1 reação ·
-
showSearch 默认值是 false 把 Aberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 25/100
react-component/select#1086 ·
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 30/100
react-component/select#1082 · 1 comentário ·
Todas as issues de react-component/select
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
-
security
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
IBM/node-sdk-core#373 ·
-
e2e-failure ready-to-code
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 86/100
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
-
chore
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100