我正在尝试在Angular 4应用程序中创建一个D3强制导向图(https://github.com/d3/d3/blob/master/API.md#forces-d3-force)。
它正确地拖动它的自我工作,缩放和平移是由它自己工作,但当你同时使用它们(拖动和缩放)时,它停止工作不正确。
我拖动一个圆圈,当我停止拖动时,看起来圆圈仍然被选中并继续拖动。
我创建了一个示例项目,可以在此处找到代码:https://github.com/danielamigos/angular-graphs
要查看实际操作,请点击此处:https://danielamigos.github.io/angular-graphs/dist/index.html
答案 0 :(得分:0)
正如rioV8所提到的,这个问题是节点平移和画布平移是同时进行的。因此,解决方案是在拖动节点时停止平移画布。这可以通过在拖动节点时停止事件的传播来完成。因此,在 dragstarted(d)事件处理程序中,在开头添加以下代码行:
namespace Test {
int myVoid(void); // declaration
class yourClas; // declaration
class myClass{ // definition
public:
myClass();
~myClass();
void myFunction(void); // declaration which belongs to defined class
}
}
void myVoid() {
// definition, but compiler can't be sure this is the function
// that you mention in the namespace or a new function declaration.
}
void myClass::myFunction(void){
// absolutely definition for the method of the corresponding class
}