指令割り当て:AngularjsディレクティブのネストされたDOM要素をダイナミックセレクタでクエリする方法はありますか?親テンプレート内の
<div badge></div>
指令テンプレートtemplates/badge.html
:
ダイナミックIDの通知割り当て、指令$id
を使用。
<div>
<span id="id{{ ::$id }}_name">Nik Sumeiko, Frontend engineer</span>
</div>
指令:それはディレクティブのテンプレートは、まだその動的な値をコンパイルしていないことをはっきりと見えるのコンソール出力に基づいて
angular.module('app').directive('badge',() => ({
restrict: "A",
replace: true,
templateUrl: "templates/badge.html",
link: (scope, element, attributes) => {
// Tries to query nested DOM element by a dynamic selector.
const name = element.find(`#id${scope.$id}_name`);
console.log(name.length, element.html());
}
}));
:それは可能であるどのようにして
0 "
<div>
<span id="id{{ ::$id }}_name">Nik Sumeiko, Frontend engineer</span>
</div>
"
ネストした要素をダイナミックセレクタでクエリするには?テンプレートの角レンダリングされた動的値の後にディスパッチされる他のディレクティブメソッドはありますか?
私はそれが正しい方法だとは思わないから、link
メソッド内でレンダリングテンプレートを遅らせるために機能を注入し$timeout
を使用することをお勧めしないでください...