gojs仅在组的一部分时应用参数

gojs apply parameter only when part of group

使用 gojs,我想仅当对象放置在另一个对象中时才应用参数。

例如,当放置在 H 组中时,面板应该只添加填充 (or change value, from 0 to 25)

这可能吗? 查看 gojs docs 我看到 SelectionGrouped 但不确定这是否包括将对象放入 H Group

myDiagram.nodeTemplateMap.add("j2",
                $(go.Node, "Auto",
                    $(go.Panel, "auto", {padding:0},
                        $(go.Shape, "File"),
                        $(go.TextBlock,  "This\n is a\n file", textStyle(),
                            new go.Binding("text", "text").makeTwoWay())
                    )
                ));

您可以在使用 Group.memberAdded and memberRemoved` https://gojs.net/latest/api/symbols/Group.html#memberAdded

将部件添加到组或从组中删除时触发事件

或者您可以在部分(不是组)上进行数据绑定,以便在其 containingGroup 不为空时执行不同的操作。示例绑定:

      new go.Binding("margin", "containingGroup", function(a) {
        if (a === null) return 5;
        // otherwise its in a group:
        return 15;
      }).ofObject(),

现场观看: https://codepen.io/simonsarris/pen/LYNOpme?editors=1010