Определить правый клик в React-Примеры кода

Radu TM
Victor Talmacinschi

Определить правый клик в React

JavaScript от Victor Talmacinschi June 16, 2022

import React, { useState, useEffect } from "react";

const RightClickDetector = () => {
  // использовать состояние для отслеживания правых кликов
  const [isRightClick, setIsRightClick] = useState(false);

  // использовать эффект для добавления / удаления прослушивателя событий
  useEffect(() => {
    // добавить прослушиватель событий при монтировании
    document.addEventListener("contextmenu", handleRightClick);
    // удалить прослушиватель событий при размонтировании
    return () => document.removeEventListener("contextmenu", handleRightClick);
  }, []); // пустой массив гарантирует, что эффект запускается только при монтировании и размонтировании

  const handleRightClick = (e) => {
    e.preventDefault();
    setIsRightClick(true);
  };

  return (
    <div>
      {isRightClick ? (
        <p>Вы нажали правой кнопкой мыши!</p>
      ) : (
        <p>Попробуйте щелкнуть правой кнопкой мыши в любом месте этой страницы.</p>
      )}
    </div>
  );
};

export default RightClickDetector;

0

28.077

Определить правый клик в React

JavaScript от Radu TM June 16, 2022

import React, { useState } from "react";

const RightClickDetector = () => {
  // использовать состояние для отслеживания правого клика
  const [isRightClick, setIsRightClick] = useState(false);

  const handleContextMenu = (e) => {
    // предотвратить появление контекстного меню браузера по умолчанию
    e.preventDefault();
    // обновить состояние для отражения того, что произошел правый клик
    setIsRightClick(true);
    // сбросить состояние после короткого задержки
    setTimeout(() => setIsRightClick(false), 250);
  };

  return (
    <div onContextMenu={handleContextMenu}>
      {isRightClick ? "Правый клик!" : "Левый клик!"}
    </div>
  );
};

export default RightClickDetector;

0

28.077

Похожие JavaScript запросы

Последние JavaScript запросы

Изучите примеры кода по категориям