angular内でブートストラップポップオーバーを使用しようとしています。ディレクティブを作成し、$compile を使用してコンテンツを動的にアタッチしようとしました。ただし、 $compile はコンテンツを置き換えていません。これがフィドルです。
http://jsfiddle.net/gurukashyap/4ajpyjyf/
customDirectives = angular.module('customDirectives', []);
function MyCtrl($scope) {
$scope.items = ['abc','dev','it'];
}
customDirectives.directive('custPopover', function ($compile) {
return {
scope : {
items : '=items'
},
restrict: 'A',
template: '<span>Label</span>',
link: function (scope, el, attrs) {
scope.label = attrs.popoverLabel;
var temp = '<ul><li ng-repeat="item in items">{{item}}</li></ul>';
var contents = $compile(temp)(scope);
console.log(scope);
$(el).popover({
trigger: 'click',
html: true,
content: contents,
placement: attrs.popoverPlacement
});
}
};
});
angular.module('CustomComponents', ['customDirectives']);
任意のヘルプが評価されました