因此,這不是典型的如何去做的問題。我知道這可以通過服務或工廠完成,但我想知道是否有人可以分享創建基本服務的優點/缺點,將其注入每個控制器,然後使用每個控制器的功能擴展服務。類似於下面的示例..AngularJS,在控制器之間共享數據
app.service('HelperService', function() {
return {};
});
app.controller('Controller1', function($scope, HelperService) {
$scope.somefunc = function() {
//do stuff here
};
HelperService.somefunc = $scope.somefunc;
});
app.controller('Controller2', function($scope, HelperService) {
HelperService.somefunc();
});
這個工程,運作良好。我對這個問題感到有點愚蠢,但是似乎我在這裏錯過了一些關於爲什麼沒有使用或推薦的東西?
服務是單身,所以你可以擴展它們。如果你有控制器添加功能,它會變得混亂,爲什麼不首先建立你的服務? – lucuma
是的,不可否認,它可能會變得雜亂無章,並且在服務中做得更乾淨些。我只是好奇,如果有這樣做的利弊(除了雜亂)。 – dferg
考慮嘗試*維護*更大的應用程序,其中控制器將功能添加到服務和其他控制器中,調用這些功能。 – lucuma