是否可以使jsPlumb流程图连接器不跨越可连接的项目或指定的元素(在示例中:带有'item'类的元素)?
默认流程图行为:

期望的结果:

这是我试过的:
<div id="root">
<div class="item" id="item1">Item 1</div>
<div class="item" id="item2">Item 2</div>
<div class="item" id="item3">Item 3</div>
<div class="item" id="item4">Item 4</div>
<div class="item" id="item5">Item 5</div>
</div>
Run Code Online (Sandbox Code Playgroud)
jsPlumb.connect({
source: $('#item2'),
target: $('#item7'),
anchors: [ "Continuous" ],
connector:[ "Flowchart" ],
paintStyle: {
strokeStyle: "#000000",
lineWidth:1
}
});
Run Code Online (Sandbox Code Playgroud)
基本上让jsPlumb引擎(SVG或canvas)知道相关的DOM元素并有一个避免对象的方案
我认为React.isFragment目前仅是一个建议:https : //github.com/facebook/react/issues/12038
是否有解决方法来做类似的事情
if (child instanceof React.Fragment) {
...
}
Run Code Online (Sandbox Code Playgroud)
直到该API可用。
适用于我的临时解决方案:
const isReactFragment = child => {
try {
return child.type.toString() === React.Fragment.toString();
} catch (e) {
return false;
}
};
Run Code Online (Sandbox Code Playgroud) 我有几个具有通用接口的类。我想一次编写一个Jest测试套件,并将其应用于所有类。理想情况下,不应将其混入一个测试模块中,相反,我希望将此套件导入到每个类的每个单独的测试模块中。
有人可以指出一个完成此类工作的项目或提供示例吗?谢谢。
假设我们有:
class FinalClass {
...
}
Run Code Online (Sandbox Code Playgroud)
如何修改它来制作
class WrongClass extends FinalClass {
...
}
Run Code Online (Sandbox Code Playgroud)
要么
new WrongClass(...)
Run Code Online (Sandbox Code Playgroud)
生成异常?也许最明显的解决方案是在FinalClass的构造函数中执行以下操作:
if (this.constructor !== FinalClass) {
throw new Error('Subclassing is not allowed');
}
Run Code Online (Sandbox Code Playgroud)
有没有人有一个更清洁的解决方案,而不是在每个应该是最终的类(可能与装饰器)重复这些行?
javascript ×3
canvas ×1
commit ×1
ecmascript-6 ×1
flowchart ×1
git-commit ×1
jest ×1
jsplumb ×1
reactjs ×1
svg ×1
testing ×1