通常の選択ボックスをChosenJS(http://harvesthq.github.com/chosen/)選択ボックスに変えるカスタムディレクティブ属性を作成しました。コードをよりクリーンにするために、外部のchosen.jsプラグインファイルをHeadJSと非同期でロードしたいと思います。これが私のAngularJSディレクティブです:
myApp.module.directive('chosen-select', function() {
head.js(myApp.pathTo.plugin.chosen);
head.ready(function() {
var linker = function(scope, element, attr) {
element.chosen();
}
return {
restrict: 'A',
link: linker
}
})
});
私が抱えている問題は、非同期でロードしているため、Angularはそれが存在することを認識せず、ディレクティブが機能していないように見えることです。動的にロードされたモジュールディレクティブをプログラムで挿入して、Angularがそれを認識し、それに応じてビューを更新できるようにする方法はありますか?