我正试图在角度范围内使用boot-strap pop-over。我创建了一个指令&尝试使用$ 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']);
任何有用的帮助
答案 0 :(得分:1)
在HTML中,您不必重命名&#34; newvar&#34;到&#34;项目&#34;。
答案 1 :(得分:0)
您刚刚错误地传递了参数。 items: '=newvar'