Реагировать: Добавить много событий ко многим элементам - PullRequest
1 голос
/ 25 марта 2020

Я довольно новичок в веб-разработке и только что зарегистрировался в stackoverflow. Итак,
Привет, сообщество !!

Мой сегодняшний вопрос был таков: есть ли способ определить набор из множества событий и затем добавить их в несколько реагирующих элементов?

Это было бы полезно для меня:

const events = {
   onMouseOver: this.myOverHandler,
   onMouseDown: this.myDownHandler,
   onMouseUp: this.myUpHandler,
   onMouseLeave: this.myLeaveHandler
};

<div    {...events} >No mouse event escapes!!</div>
<p      {...events} >I catch them all!!</p>
<button {...events} >Mouse event trap</button>

Прежде чем задавать вам глупые вопросы, я быстро набрал код выше и ... Сюрприз, он работает !! Это первый раз за 3 месяца, который реагирует, делает то, что я хочу, а не наоборот. Ха-ха !!

Итак, вместо этого, я обманываю вас глупой интуицией :) Полный код следующий:

import React, { Component } from "react";

export default class Eventful extends Component {
  myOverHandler(e) {
    console.log("over " + e.target);
  }
  myDownHandler(e) {
    console.log("down " + e.target);
  }
  myUpHandler(e) {
    console.log("up " + e.target);
  }
  myLeaveHandler(e) {
    console.log("leave " + e.target);
  }

  render() {
    let id = "very secret";
    const events = {
      onMouseOver: this.myOverHandler,
      onMouseDown: this.myDownHandler,
      onMouseUp: this.myUpHandler,
      onMouseLeave: this.myLeaveHandler
    };

    return (
      <>
        <div {...events}>No mouse event escapes!!</div>
        <p {...events}>I catch them all!!</p>
        <button {...events}>Mouse event trap</button>
      </>
    );
  }
}

Это делает все, что мне нужно. Я действительно счастлив:)

Конечно, я мечтаю, но моя удача на сегодня уже исчерпана.

<div {...events(common_parameter)}>Not too high, Ikarus!</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...