Angular小部件中的Angular Grid返回错误:[$injector:unp]未知提供程序:
Angular Grid in an Angular widget returns Error: [$injector:unpr] Unknown provider:
在下面的代码中,我创建了一个使用角度网格传递数据的角度小部件。然而,我得到以下错误Error: [$injector:unpr] Unknown provider: alphadataProvider <- alphadata
小工具代码:
'use strict';
angular.module('alphabeta.table.widgets', ['adf.provider', 'btford.markdown', 'ngGrid'])
.value('githubApiUrl', 'https://api.github.com/repos/')
.config(function(dashboardProvider){
dashboardProvider
.widget('reservationTotals', {
title: 'Reservation Totals',
description: 'Reservation Totals widget',
controller: 'reservationTotalsCtrl',
templateUrl: 'scripts/widgets/alphabeta/alphabeta.html',
resolve: {
alphadata: function(alphatradingService){
return alphatradingService.get();
}
},
edit: {
templateUrl: 'scripts/widgets/alphabeta/edit.html',
reload: false
}
});
})
服务
.service('alphatradingService', function($q, $http, githubApiUrl){
return {
get: function(){
var deferred = $q.defer();
$http.get('9_Response.json')
.success(function(data){
deferred.resolve(data);
})
.error(function(){
deferred.reject();
});
return deferred.promise;
}
};
})
控制器
.controller('reservationTotalsCtrl', function($scope, alphadata){
var tabledata = [];
var i, n;
var ycount=0, yexist=0;
var numf;
for(i=0;i<alphadata.length;i++){
yexist=0;
for(n=0;n<ycount;n++){
if (alphadata[i].stYear == tabledata[n].Year && alphadata[i].market == tabledata[n].Market) {
tabledata[n].Sales += alphadata[i].totSale;
tabledata[n].Sales = parseFloat(Math.round(tabledata[n].Sales * 100) / 100);
yexist++;
break;
}
}
if (!yexist) {
numf = alphadata[i].totSale;
tabledata.push({
Market: alphadata[i].market,
Year: alphadata[i].stYear,
Sales: parseFloat(Math.round(numf * 100) / 100),
CustomerName: alphadata[i].custName
});
ycount++;
}
}
$scope.data = tabledata;
$scope.gridOptions = {
data: 'data',
enablePinning: true,
columnDefs: [{ field: "Market", width: 60, pinned: true },
{ field: "Year", width: 60 },
{ field: "Sales", width: 60 },
{ field: "CustomerName", width: 60 }]
};
console.log($scope.data);
});
alphabeta.html
代码:
<div>
<div ng-controller="reservationTotalsCtrl">
<div class="gridStyle" ng-grid="gridOptions"></div>
</div>
</div>
你能帮帮我吗?
试着这样定义你的决心:
resolve: {
'alphadata': ['alphatradingService', function(alphatradingService){
return alphatradingService.get();
}]
}
很抱歉,我很晚才看到你的问题。但我的回答可能会帮助其他陷入类似问题的人。查看错误的基本情况,即
错误:[$injector:unp]未知提供程序:
这意味着您没有正确解决注入器的依赖关系,正如angularjs文档中提到的,注入器在您的情况下似乎是一项服务。
你本可以试试:
resolve: {
alphadata: function(alphatradingService){
return alphatradingService.get;
}
在您的服务
$scope.get = get (get is your function defined in services)
相关文章:
- Angular JS IE9 Hashbang url rewriting
- 如何使用skip参数使用angular ui引导进行服务器端分页
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 无法在数据endVal中设置值=“”;{{ucount}}”;使用Angular JS的CountUp
- 使用angular重定向到html页面
- angular.js没有'无法在PhoneGap中处理视图标记
- Javascript(Angular)从一个对象数组到第二个数组查找值
- angular 1.5应用程序中的导航栏
- angular的下拉菜单
- Angular只从数组中获取所需的数据
- 如何将不可变的js导入angular 2(alpha)
- Angular js-返回一个包含类似
- 如何使用 Angular JS 将数据保存在数据库中
- 将JSON对象传递给angular指令
- 从HTTPGET返回一个自定义对象列表,以便在Angular 2应用程序中使用
- Angular:更新一次性绑定的数据
- 同步调用,直到用户通过angular验证为访问者
- Angular小部件中的Angular Grid返回错误:[$injector:unp]未知提供程序:
- angular.js:13294错误:[$injector:unp]未知提供程序:cityResourceProvide
- 如何解决angular[$injector:unp]未知的提供程序错误