我正在尝试使用Angular Service,因为$ scope不能在服务中注入,所以使用$ rootScope。我的代码看起来很好但是出现了以下错误 -
这是代码 - EmployeeService.js: ///
select ac_id, txn_amt, round((((txn_amt - lag(txn_amt, 1) over (partition by ac_id order by ac_id, txn_amt))/txn_amt)*100,2) as amt_diff_pct from txn;
在我的控制器中,我试图像下面那样使用它:
app.factory('fetchEmpService', ['$rootScope', '$http', function ($http, $rootScope) {
var employees = [];
return {
fetchEmp: function () {
debugger;
return $http.get("EmpWebService.asmx/GetEmp")
.then(function (response) {
employees = response.data;
$rootScope.$broadcast('allEmployees', employees);
return employees;
});
}
};
}]);
我有点困惑,数据将进入$ scope。$ on
答案 0 :(得分:6)
您的参数和注射剂数组的顺序不同。
此:
app.factory('fetchEmpService', ['$rootScope', '$http', function ($http, $rootScope)
需要
app.factory('fetchEmpService', ['$rootScope', '$http', function ($rootScope, $http)
订单很重要,需要相同。
有关dependency injection的更多信息。