我尝试处理ctrlKey + click vs click事件。
eventHandler
seatClickHandler = (event, seat) => {
console.log(event);
console.log(seat);
};
被点击的组件。
<Circle onClick={ (event) => this.seatClickHandler(event, seat) }
key={seat['id']}
center={[x, y]}
radius={7} />
我尝试检查event.ctrlKey
,但未定义。
如何确定按住Ctrl或Shift键会发生点击?
问题是我不能使用react-leaflet事件中的reactJs事件。 例如,如果我运行
event.stopPropagation();
,则会出现致命错误。
答案 0 :(得分:1)
传单有其own events。如果您想访问原始点击事件,则需要通过传单事件上的originalEvent
属性进行访问:
if (event.originalEvent.ctrlKey) {
// handle ctrl + click ...
}
您希望DOMEvent
拥有的每个属性都将在此对象上,而不是在传单事件对象上。这也包括stopPropagation()
。