How to trigger keypress event in React.js

前端 未结 3 2106
南旧
南旧 2020-12-30 21:34

I\'m new to React.js. I\'m trying to trigger keypress event for text div.

Here is text box code for which I want to execute keypress trigger.

3条回答
  •  天命终不由人
    2020-12-30 22:18

    If you create a reference to the div, then you can trigger an event on it. With hooks, you can use useRef. Without hooks, you can use createRef.

    With hooks:

    function MyComponent() {
      const ref = useRef();
    
      // This is simply an example that demonstrates
      // how you can dispatch an event on the element.
      useEffect(() => {
        ref.dispatchEvent(new KeyboardEvent('keypress', {
          key: 'Enter',
        }));
      }, []);
    
      return (
        
    ); }

    Without hooks:

    class MyComponent extends React.Component {
      constructor(props) {
        super(props);
        this.ref = React.createRef();
      }
    
      // This is simply an example that demonstrates
      // how you can dispatch an event on the element.
      triggerKeyPress() {
        this.ref.dispatchEvent(new KeyboardEvent('keypress', {
          key: 'Enter',
        }));
      }
    
      render() {
        return (
          
    ); } } el.dispatchEvent(new KeyboardEvent('keypress',{'key':'a'}));

提交回复
热议问题