react-component / react-component/input

在 Mac 系统上使用中文输入法时,onPressEnter 是否存在问题?

Offen
#26 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
TypeScript
Sterne
44
Forks
56
Ø Merge
20 Std. 6 Min.
Gemergte PRs (30 T.)
1

Beschreibung

公司项目使用了 Antd,而 Antd 依赖了 rc-input 的代码。通过查看源码后发现 onPressEnter 使用了 onkeydown 实现检查是否按下 Enter,但这种实现会导致在 Mac 系统上使用中文输入法的情况下,输入任意内容不选择任何联想项时按下 Enter 键,会触发对应逻辑,正常情况下应该不做处理?个人尝试后发现使用 onkeypress 是没有问题的。

这是我写的 最小复现 Demo,如果使用非 onkeypress 的方式捕获,则会触发此问题,Windows 貌似没有出现此问题。

rc-input 的最小复现

https://user-images.githubusercontent.com/25198337/197444497-1e93cdf7-37ed-4bdd-a8c8-1bd70fa5bf5c.mp4

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit dem onkeydown-Handler in src/Input.tsx ungefähr bei Zeile 86 und reproduziere anschließend das Verhalten mithilfe der verlinkten rc-input CodeSandbox oder der Mac Chinese-input-method demo. Erledigt ist die Aufgabe, wenn das Drücken von Enter ohne Auswahl eines Vorschlags während der Komposition onPressEnter nicht auslöst, während die normale Enter-Behandlung weiterhin funktioniert.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
typescript
Bereich
frontend
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Aktiv
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
68/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.