1

angular.js と d3.js を使用するマルチデータ アプリを開発しています。<svg> をスコープに含めるのに苦労しています。

現在起こっていることは、ngRepeat がそのメソッドを実行する前に、ディレクティブ ngTests がロードされているということです。

皆さんがより良いアイデアを得ることができるように、ここにフィドルを置いています。

jsfiddle

<ng-chart></ng-chart>

PS : ngTests ディレクティブで td id を取得できますが、まったく更新されません<td ng-tests id="histogram{{$index}}"

この行を<td ng-tests id="histogram">.

ありがとうございました。

4

1 に答える 1

0

2 つのことを行います。ngChart ディレクティブでは、 index 属性が次のように指定されていますindex="index"が、 である必要がありますindex="{{$index}}"。次に、属性に直接アクセスする代わりに、他のディレクティブから属性値を読み取るには、次のようattrs.indexに使用する必要があります。attrs.$observe

    attrs.$observe('index', function(observedIndex) {
        console.log('observedIndex:', observedIndex);
    });

このようにして、インデックスが (たとえば、別のディレクティブによって) 変更されると、通知を受け取り、要素のテキストを更新できます。私はフィドルをフォークして、ここで動作させました。

于 2013-02-16T09:29:22.040 に答える