Material-ui: 選択フィールドでfocus()をプログラムでトリガーする方法は?

作成日 2017年11月16日  ·  3コメント  ·  ソース: mui-org/material-ui


私のアプリフォームでは、Enterボタンを使用して、テンキーキーボードの速度を指定するフィールドにタブで移動します。 Enterキーが押されると、DOMルックアップを実行し、次の要素でfocus()をトリガーします。 これはテキストフィールドではうまく機能しますが、選択ボックスでこれを実現する方法がわかりません。 Select構造を構成する各DOM要素を取得できますが、どのレベルでもfocus()をトリガーしても何も起こりません。
注:DOMを通過しないように、selectのinputRefを介してアイテムの参照を取得できますが、それでも結果は得られません。
よろしくお願いします!

  • [x]このリポジトリの問題を検索し

予想される行動


focus()が手動でトリガーされると、Selectはフォーカスされます(ただし、開かれません)。 叩くのと同じ動作を期待する前の要素に。

現在の動作


node.focus()をトリガーしても何も実行されず、selectDOM構造内の要素に対してもトリガーされません。

再現手順(バグの場合)


https://codesandbox.io/s/m43qqyo2zy

  1. 最初のテキストボックスを選択します。
  2. Enterキーを押します。
  3. 2番目のテキストボックスがFTWにフォーカスされていることに注意してください。
  4. もう一度Enterキーを押します。
  5. 何も起こりません。

環境

あなたの環境

| 技術| バージョン|
| -------------- | --------- |
| 素材-UI | 1.0.0-beta.21 |
| React | 16.1.0 |
| ブラウザ| Chrome 62 |
| など| |

question

最も参考になるコメント

誰かが同様の問題でここでつまずいた場合:これは機能します: https

全てのコメント3件

@zachariahtimothyこれがMUIの問題であるとは確信していません。 フォームのクリーンアップを行う必要があるようです。 ライブラリの使用方法に関する質問については、StackOverflowにアクセスしてください。 乾杯! 😄

@ m2mathewあなたが言っていることがわかります、スタックオーバーフローについて質問します。
私の見解では、MUIの選択をイベントの観点からネイティブフォーム要素として扱うことが不可能な場合は、ライブラリに問題が発生します。 私はうまくいったネイティブフラグでそれを試しました、それで私は通り抜けます、ただオーバーライドされた選択のように私が望む美しさを持っていません:)。
返信と素晴らしいライブラリをありがとう!

誰かが同様の問題でここでつまずいた場合:これは機能します: https

このページは役に立ちましたか?
0 / 5 - 0 評価