使用法

元のコンポーネントを withFocusOutside でラップし、コンポーネントクラスに handleFocusOutside インスタンスメソッドを定義します。

注意: withFocusOutsideComponent クラスをラップするためだけに使用する必要があります。

  1. import { withFocusOutside, TextControl } from '@wordpress/components';
  2. const MyComponentWithFocusOutside = withFocusOutside(
  3. class extends React.Component {
  4. handleFocusOutside() {
  5. console.log( 'Focus outside' );
  6. }
  7. render() {
  8. return (
  9. <div>
  10. <TextControl onChange={ () => {} } />
  11. <TextControl onChange={ () => {} } />
  12. </div>
  13. );
  14. }
  15. }
  16. );

上記の例では、handleFocusOutside 関数は要素からフォーカスが外れた場合にのみ呼び出され、2つの入力間でフォーカスを移動する場合には呼び出されません。