1

ネストされた AngularJS ディレクティブに関するヘルプを探しています。

http://jsfiddle.net/vankirkc/ezN3M/28/

たとえば、コンテナとアイテムを含む一連のカスタム ディレクティブ要素を定義しました。私はそれらを次のように整理します:

<container>
  <item />
  <item />
  <item />
</container>

次に、それぞれを定義します。添付の jsFiddle から、ネストされたアイテムに対してコンパイル関数が呼び出されていないことがわかりますが、アイテム要素がコンテナーから移動されると呼び出されます (コンパイル関数自体に問題がないことを示しています。

ネストされたディレクティブがコンパイル イベントをトリガーしないのはなぜですか?

これは、Angular ホームページの次の例に大まかに基づいています。

http://jsfiddle.net/vankirkc/HpHeW/

なぜ彼らの子供たちが正しく解析していて、私のものは正しく解析していないのか、私にはわかりません。

4

1 に答える 1

1

ng-transcludeトランスクルージョンを使用する場合、テンプレート要素の 1 つにディレクティブを追加する必要があります。groupディレクティブのテンプレートを次のように変更した場合:

template: '<div ng-transclude></div>',

すべてが機能します。

PS: ディレクティブ宣言の構文は、あなたがしていることに対して非常に冗長ですが、技術的には正しいです。

于 2013-01-10T02:26:33.667 に答える