Setting the value of a controlled TextInput breaks when autocorrect suggestion present
Nessuno ha ancora preso questa issue.
- Lingua principale
- C++
- Stelle
- 127k
- Fork
- 25.3k
- Merge medio
- 1g 23h
- PR unite (30g)
- 4
Descrizione
On iOS, something wonky happens when the value of a TextInput is programmatically modified (via setState and the value property of said TextInput) and an autocorrect suggestion is present.
The value of the text input ends up being set to the combination of the autocorrect suggestion and the programmatic value. This only happens when multiline={true}. When multiline={false}, all is fine.
This seems only to be reproducible on iOS. I was not able to reproduce on the Snack iOS simulator. This can be reproduced using the software keyboard in the Snack iOS simulator with multiline={true}. The Snack iOS simulator does not reproduce with multiline={false}, but this does reproduce on a device.
React Native version: 0.59-0.76
Steps To Reproduce
- Start the reproducer: https://snack.expo.dev/@mhoran/trusting-peanut
- Type "Yo mh" and wait for the auto-correct suggestion of "my"
- Click "Bananas!"
- Notice that the value set programmatically will become a combination of the autocorrect value and the programmatic value.
Describe what you expected to happen:
I expected the value to be set to "Yo mhoran".
Snack, code example, screenshot, or link to a repository:
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia con il riproduttore Snack collegato e con il comportamento di React Native TextInput relativo a setState, alla proprietà value, all'input multilinea e alla correzione automatica di iOS. Riproduci il problema su un dispositivo iOS e confronta il valore risultante con quello previsto, "Yo mhoran"; il lavoro è completato quando gli aggiornamenti programmatici non vengono più combinati con il suggerimento di correzione automatica in sospeso.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- ios, react-native
- Ambito
- mobile-dev
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100