0

ネストされた関数呼び出しを行っていますが、同時に変数をネストされた関数に渡す必要があります。これが私がやろうとしていることです

allSourceEndpoints.push(jsPlumb.addEndpoint(toId, sourceEndpoint(index), { anchor:sourceAnchors[i], uuid:sourceUUID }));


sourceEndpoint(index) = {
            endpoint:"Dot",

            paintStyle:{ fillStyle:"#225588",radius:3 },
            isSource:true,
            isTarget:true,
            maxConnections:-1,
        //  connector:[ "Flowchart", { stub:[40, 60], gap:10 } ],
        //  connector:[ "Flowchart"],

            hoverPaintStyle:connectorHoverStyle,
            connectorHoverStyle:connectorHoverStyle,
            dragOptions:{},
            overlays:[
                [ "Label", { 
                    location:[0.5, 1.5], 
                    label:""+startEnd[index].start,
                    cssClass:"endpointSourceLabel",
                } ]
            ]
        }

上記のコードは、次の理由で機能しません。

       index 

私がやっていることを渡します。始まりを知る必要があるので、それが必要です。そのインデックス参照と行を削除すると

         label:""+startEnd[index].start,

それはうまくいきますが、私は本当にそれを含める必要があります. これを行う方法はありますか??

助けてくれてありがとう!

4

1 に答える 1

3

sourceEndPoint コンストラクトを関数に変更し、JSON オブジェクトを戻り値として返します。すなわち:

sourceEndpoint = function(index) {

    return {
            endpoint:"Dot",

            paintStyle:{ fillStyle:"#225588",radius:3 },
            isSource:true,
            isTarget:true,
            maxConnections:-1,
        //  connector:[ "Flowchart", { stub:[40, 60], gap:10 } ],
        //  connector:[ "Flowchart"],

            hoverPaintStyle:connectorHoverStyle,
            connectorHoverStyle:connectorHoverStyle,
            dragOptions:{},
            overlays:[
                [ "Label", { 
                    location:[0.5, 1.5], 
                    label:""+startEnd[index].start,
                    cssClass:"endpointSourceLabel",
                } ]
            ]
        };
    }
于 2012-10-29T23:25:27.387 に答える