Relink is not working after setting portId to ""

Hello, walter.

I set portId of a node type of A to empty string.

After that, the relinkingtool is not working for this node type of A. (fig1)

  • fig1
    image

I’ve added a picture while relinking tools is okay. (fig2)

Is toLinkable true for the port of node A2?

The node type of A already has toLinkable and fromLinkable to be true.
(A1, A2, A3 is all node tyoe of A.)

    diagram.nodeTemplate = $(go.Node, 'Spot',
        {
            selectionAdorned: false,
            fromLinkable: true,
            toLinkable: true,
            fromLinkableSelfNode: false,
            toLinkableSelfNode: false,
            zOrder: 1,
            groupable: true,
            ...
        },
        ...
    );

And the link template has relinkableFrom and relinkableTo to be true.

    diagram.linkTemplate = $$(go.Link,
        {
            curve: go.Link.Bezier,
            isLayoutPositioned: false,
            reshapable: true,
            resegmentable: true,
            relinkableFrom: true,
            relinkableTo: true,
            zOrder: _DEFAULT_ZORDER + 1,
            ...
        },
        ...
    );

walter,

I’ve recognized that relinking from a node type of B(portId is not set) to a node type of A(portId set set to empty string) is still working well.

My guess is that you have set portId on some object that is not the whole Node and have not moved the port-related properties (“from…” and “to…”) from the Node to that object.

In general you have to set or bind all port-related properties on each object for which portId is a string.