6

http://jsfiddle.net/kz26/kH9wg/

私は AngularJS でディレクティブをいじっており、短縮ディレクティブ スタイル (リンク関数のみを返す) とロングハンド スタイル (ディレクティブ定義オブジェクトのすべてまたは一部を返す) の両方を試しています。

残念ながら、私は で定義された簡単な方法を使用して (jQuery ポップアップをアクティブにする) ディレクティブを機能させることしかできませんでしたpopup2。ロングハンドpopup2ディレクティブはまったく機能していないようです。特に、link定義オブジェクトの関数が呼び出されることはありません。この明示的なリンク宣言を機能させるにはどうすればよいですか?

4

2 に答える 2

9

両方のディレクティブは、最初のモジュールを上書きするのではなく、ディレクティブを作成するときに同じモジュールを再利用するための小さな調整で機能します。このフィドルを参照してください。

代わりに:

angular.module("app", []).directive('popover1'...

angular.module("app", []).directive('popover2'...

次のようにします。

var module = angular.module("app", []);

module.directive('popover1'...

module.directive('popover2'...

編集:ドキュメントを見た後、次のように元の投稿と同様のことができることがわかります:

angular.module('app', []).directive('popover1'...

angular.module('app').directive('popover2'...

既存のモジュールを構成する[]には、最初の to の後の後続の呼び出しで2 番目のパラメーターを省略します。angular.module

于 2012-07-24T04:11:23.197 に答える