angular.module('app', [])
.controller('MyAppController', function ($scope) {
$scope.myArray = [{}, {}, {}];
})
.directive('myOverflowMenu', function() {
return {
restrict: 'E',
template: [
'<div data-overflow-menu tabindex="0" aria-label="Overflow menu description" class="bx--overflow-menu">',
'<svg class="bx--overflow-menu__icon" width="4" height="20" viewBox="0 0 4 20" fill-rule="evenodd">',
'<circle cx="2" cy="2" r="2"></circle>',
'<circle cx="2" cy="10" r="2"></circle>',
'<circle cx="2" cy="18" r="2"></circle>',
'</svg>',
'<ul class="bx--overflow-menu-options">',
'<li class="bx--overflow-menu-options__option">',
'<button class="bx--overflow-menu-options__btn">Stop app</button>',
'</li>',
'<li class="bx--overflow-menu-options__option">',
'<button class="bx--overflow-menu-options__btn">Restart app</button>',
'</li>',
'</ul>',
'</div>'
].join(''),
link: function (scope, element) {
const overflowMenu = CarbonComponents.OverflowMenu.create(element[0].querySelector('[data-overflow-menu]'));
scope.$on('$destroy', function() {
overflowMenu.release();
});
}
};
});
<link rel="stylesheet" href="https://unpkg.com/[email protected]/css/carbon-components.css">
<script src="https://unpkg.com/[email protected]/scripts/carbon-components.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
<div ng-app="app" ng-controller="MyAppController">
<div ng-repeat="item in myArray">
<my-overflow-menu></my-overflow-menu>
</div>
</div>
Können Sie Ihren Code schreiben Sie? Pastebin/jfiddle usw., es würde Leuten helfen zu sehen, was falsch läuft. – rrd