我可以很容易地想象自己将我的警报服务注入到我的几乎每个控制器中:
myApp.factory('AlertsList', function () {
return [{ type: 'info', msg: 'Welcome!'},
{ type: 'success', msg: 'Checkout this subpage'}]
});
/* E.g.: for this controller */
function AlertsCtrl($scope, AlertsList) {
$scope.alerts = AlertsList;
$scope.closeAlert = function (index) {
$scope.alerts.splice(index, 1);
}
}
AlertsCtrl.$inject = ['$scope', 'AlertsList'];
停止这个扩展的样板;如何使用此警报服务更新 AngularJS 的 rootScope?