Попытка показать контекстное меню на событии правой кнопки мыши
Я поспешил, потому что я пытаюсь реализовать событие, которое показывает контекстное меню, когда пользователь щелкает правой кнопкой мыши на узле или на краю своего графика. Я пробовал разные подходы (используя ref для доступа к функциям API, таким как getPositions или функция getNodeAt), но, похоже, никто не работал. Это упрощение компонента, с которым я работаю:
export class MainPage extends Component {
constructor(props) {
super(props)
this.state = {
graph: {
nodes: [
{id: 1, label: "Twitter texts"},
{id: 2, label: "Reddit comments"},
{id: 3, label: "Reddit submissions"}
],
edges: []
},
options: {
layout: {
hierarchical: {
levelSeparation: 150,
nodeSpacing: 150,
}
},
edges: {
color: "#000000"
},
height: '1000px',
width: '1300px'
},
events: {
oncontext: this.right_click,
}
}
}
right_click = (event) => {
//show popup...
}
render() {
return (
<div id={"mygraph"}>
<Graph
graph={this.state.graph}
options={this.state.options}
events={this.state.events}
ref={ref => (this.g = ref)}
/>;
</div>
)
}
}
Я буду признателен за любую помощь. С наилучшими пожеланиями