ng-repeat は長さが不明であるため、ディレクティブをレンダリングする ng-repeat があります。ディレクティブを介して、クリック時に jquery プラグインを動的にロードしようとしています。
私はかなり近いと思いますが、プラグインの一部しか読み込まれず、残念ながらエラーは発生しません。Pickadateプラグインに精通している場合、クラスは入力要素でレンダリングされますが、動的に追加される要素はクリック時にレンダリングされません。
これが私のコードです:
HTML
<div class="calendar" add-calendar>Click to add calendar</div>
Angular ディレクティブ 1
agentApp.directive('addCalendar', ['$compile', function($compile) {
return {
restrict: 'A',
link: function(scope, element, attrs) {
template = '<input type="text" jq-date-picker-range />';
element.bind('click', function() {
angular.element(this).after($compile(template)(scope));
});
}
}
}]);
Angular ディレクティブ 2
agentApp.directive('jqDatePickerRange', function() {
return {
restrict: 'A',
link: function(scope, element, attrs) {
angular.element(element).pickadate();
}
};
});
出力
<input type="text" jq-date-picker-range class="ng-scope picker__input picker__input--active" readonly="" id="P780839543" aria-haspopup="true" aria-expanded="true" aria-readonly="false" aria-owns="P780839543_root">
ご覧のとおり、クラスは作成されていますが、その後レンダリングされるカレンダー div 要素は作成されていません。
どんな助けでも大歓迎です。ありがとう。