javascript - 在 React.JS 中禁用右键单击

标签 javascript reactjs canvas html5-canvas dom-events

如何在 ReactJS 中禁用 Canvas 中的右键单击。这是我尝试过但仍然无效的方法:

let Canvas = <canvas onContextMenu={(e)=>  {e.preventDefault(); return false;}} height={500} width={500} ref="canvas"/>;

浏览器控制台中也会显示警告。

Warning: Returning false from an event handler is deprecated and will be ignored in a future release. Instead, manually call e.stopPropagation() or e.preventDefault(), as appropriate.

编辑:是的,它确实停止了 Canvas 上的右键单击功能,但我的问题是:我在左键单击时绘制了一个点,它也在右键单击时绘制,我想禁用它。

最佳答案

这个JS函数会阻止上下文菜单事件的冒泡,从而阻止上下文菜单出现:

canvas.oncontextmenu = function (e) {
    e.preventDefault();
};

关于javascript - 在 React.JS 中禁用右键单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35043748/

相关文章:

javascript - 为什么 React 及其生态系统会采用不变性的概念?

javascript - 通过canvas制作客户端截图

javascript - 带有 React Hooks 的 HoC

javascript - 在多个react.js组件中渲染json数据

javascript - Webpack 和外部库 : ProvidePlugin vs entry vs global import?

javascript - getImageData 丢失的透明度 - HTML5 2d 上下文

javascript - 在 p5.js Canvas 上旋转和绘图

javascript - 添加指向 X-Label Chart.js 的链接

javascript - "SyntaxError: Unexpected token u in JSON at position 0"错误

javascript - 调用方法 Location.toString 的权限被拒绝