Mam dyrektywy: w szablonie:kontroler Singleton w angularjs
<territorial-selector></territorial-selector>
w JS:
app.directive('territorialSelector', function() {
return {
restrict: 'E'
,templateUrl: 'partials/territorial-selector.html'
,controller: 'TerritorialSelectorController'
};
};
Jak widać stosowanie dyrektywa "TerritorialSelectorController"
w innej miejsce Mam przycisk, który powinien wykonać metodę loadTerritories() z TerritorialSelectorController. Stworzyłem ten przycisk:
<button ng-controller="TerritorialSelectorController" ng-click="loadTerritories()">BUTTON</button>
Problem, że w tym przypadku TerritorialSelectorController tworzy dwa razy. Tutaj jest kod TerritorialSelectorController:
app.controller('TerritorialSelectorController', ['$scope', function($scope) {
alert('AAAAA'); // I have alert two times
}]);
Potrzebuję tylko jednego obiektu kontrolera.
Chyba należy utworzyć usługę zamiast kątowa - https://docs.angularjs.org/guide/services – tiblu
1. miejsce, co masz na myśli przez 'kontroler Singleton '? –
Mam na myśli to, że nie chcę dwóch obiektów TerritorialSelectorController. – Ildar