[解決済み] Angular.jsのattributeディレクティブに複数の属性を渡すには?
2022-09-30 18:31:27
質問
以下のように制限された属性ディレクティブがあります。
restrict: "A"
数値と関数/コールバックの二つの属性を渡す必要があり、ディレクティブ内で
attrs
オブジェクトを使ってアクセスします。
ディレクティブが要素ディレクティブであった場合は
"E"
これにすることができました。
<example-directive example-number="99" example-function="exampleCallback()">
しかし、ここでは説明しない理由により、このディレクティブは属性ディレクティブである必要があります。
attribute ディレクティブに複数の属性を渡すには?
どのように解決するのですか?
ディレクティブは、ディレクティブ自身が要素でない場合でも、同じ要素に定義されている任意の属性にアクセスすることができます。
テンプレートです。
<div example-directive example-number="99" example-function="exampleCallback()"></div>
ディレクティブ
app.directive('exampleDirective ', function () {
return {
restrict: 'A', // 'A' is the default, so you could remove this line
scope: {
callback : '&exampleFunction',
},
link: function (scope, element, attrs) {
var num = scope.$eval(attrs.exampleNumber);
console.log('number=',num);
scope.callback(); // calls exampleCallback()
}
};
});
もし、属性
example-number
がハードコードされている場合、私は
$eval
を一度使って、その値を保存しておくことをお勧めします。 変数
num
は正しい型(数値)を持つことになります。
関連
-
[解決済み】ある要素を別の要素に移動させるには?
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み] Node.jsのプログラムにコマンドライン引数を渡すにはどうしたらいいですか?
-
[解決済み] Pythonでオブジェクトが属性を持つかどうかを知る方法
-
[解決済み] setTimeout()コールバックにパラメータを渡すにはどうすればよいですか?
-
[解決済み] '$(this)' と 'this' の違いは何ですか?
-
[解決済み] カスタムディレクティブの中で評価された属性を取得する方法
-
[解決済み】jQueryはコールバックに多くのパラメータを渡します。
-
[解決済み】AngularJSで属性を条件付きで適用するための最良の方法は何ですか?
-
[解決済み] angular ディレクティブは、ディレクティブの属性で指定された式で関数に引数を渡すことができますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] jqueryでdivの要素がオーバーフローしていないかチェックする
-
[解決済み] javascriptで2つの数値を連結する方法は?
-
[解決済み] モバイルWeb HTML5フレームワークの選び方【終了しました
-
[解決済み] URL/アドレスバーからJavascriptの関数を呼び出す
-
[解決済み] 文字列がhtmlであるかどうかをチェックする
-
[解決済み] JavaScriptで文字列を数値に変換する最速の方法は何ですか?
-
[解決済み] Javascript / jQueryでAndroid端末を検出する。
-
[解決済み] Javascript の parseInt() で先頭のゼロを削除する。
-
[解決済み] JavaScriptとLuaの微妙な違い [終了しました]
-
[解決済み] JavaScriptのArray.sort()メソッドでシャッフルするのは正しいのか?