第一部分:只有“判断”节点引出的连线才显示文字标签
节选自官方示例:完整示例详见参考链接第一个
function showLinkLabel(e) {
var label = e.subject.findObject("LABEL");
// 结合自己的实际情况调整判断条件
if (label !== null) label.visible = (e.subject.fromNode.data.category === "Conditional");
}
第二部分:连线上的内容只能为“是”或“否”
$$(go.TextBlock,"是/否", // 连线上的默认文字内容
{ // 连线上文字标签框的样式
textAlign: "center",
font: "bold 11pt Helvetica, Arial, sans-serif",
stroke: "#333333",
margin: 8,
maxSize: new go.Size(300, NaN),
wrap: go.TextBlock.WrapFit,
editable: true, // 允许编辑
textEdited: function(textBlock, previousText, currentText) {
console.log(textBlock,textBlock.part.data);
// 限制连线上的文字标签的内容只能为“是”或“否”
if(currentText != "是" && currentText != "否"){
textBlock.text = previousText;
// 这里可以给出提示信息:只能填“是”或“否”
}
}
},
new go.Binding("text").makeTwoWay()
)
参考链接:
1.官方示例:https://gojs.net/latest/samples/flowchart.html (连线上显示标签)
(点击它最下方的View this sample page's source in-page查看源码)
2.官方API:https://gojs.net/latest/api/symbols/TextBlock.html#textEdited (监听连线上文字的变化)
3.官方API:https://gojs.net/latest/api/symbols/TextBlock.html#text (如何修改连线上的文字)
4.学习网址:https://www.cnblogs.com/wangpenghui522/p/9998336.html