【发布时间】:2018-09-25 11:40:04
【问题描述】:
需要在 react 中实现 jsPlumb,我分析了带有 react 集成的 jsPlumb 已获得许可ReactjsPlumb。
我需要开源插件,它可以作为 jsPlumb 在 react 和 并尝试了以下方法:
我无法使用这些插件,因为这两个插件都是用 TypeScript 编写的。 是否有任何其他可用的插件,如 jsPlumb 与纯反应功能反应。
不知何故,在 react 中添加了 jsPlumb 社区版本,如下所示:
class App extends Component {
componentDidMount() {
//later we use like that , is this recommended ?
// $(".item").resizable({
// resize : function(event, ui) {
// jsPlumb.repaint(ui.helper);
// },
// handles: "all"
// });
jsPlumb.ready(function() {
jsPlumb.connect({
source:"item_left",
target:"item_right",
endpoint:"Rectangle"
});
jsPlumb.draggable("item_left", {containment:"parent"});
jsPlumb.draggable("item_right", {containment:"parent"});
});
}
render() {
return (
<div id="diagramContainer">
<div id="item_left" className="item"></div>
<div id="item_right" className="item"
style={{marginLeft:"150px"}}></div>
</div>
);
}
}
我不知道,使用带有 react 的 jsPlumb (javascript + jQuery) 会是一个更明智的选择,因为 jsPlumb 在内部处理拖放并直接处理 DOM。 React 是不同的。这感觉有点像死锁......有什么建议吗?
【问题讨论】:
-
你有解决办法吗?如果没有,那么我在答案部分给出解决方案。