Javascript 获取AngularJS中的错误
我正在创建一个小的web应用程序,我将在其中显示十大热门电视节目的图表。然后,当我转到浏览器并检查时,我得到一个错误: 错误:[$injector:unpr]$injector/unpr?p0=showProvider%20%3C-%20show%20%3C-%20MainController show.jsJavascript 获取AngularJS中的错误,javascript,angularjs,Javascript,Angularjs,我正在创建一个小的web应用程序,我将在其中显示十大热门电视节目的图表。然后,当我转到浏览器并检查时,我得到一个错误: 错误:[$injector:unpr]$injector/unpr?p0=showProvider%20%3C-%20show%20%3C-%20MainController show.js app.factory('Top10App', ['$http', function($http){ return $http.get('shows.json') .suc
app.factory('Top10App', ['$http', function($http){
return $http.get('shows.json')
.success(function(data){
return data;
})
.error(function(err){
return err;
});
}]);
您将服务名称定义为“Top10App”,因此这是您访问它的方式,而不是通过文件名
['$scope', 'Top10App', function ($scope, Top10App) { ...
Top10App.success(...
首先,您是否创建了模块?您应该有如下内容:
// app.js
angular.module('app', []);
// maincontroller.js
angular.module('app').controller('myController, ...', [.......]);
// factory.js
angular.module('app').factory(...)
您正试图将show作为控制器的依赖项注入,但它似乎没有在任何地方定义。这就是为什么你的错误告诉你它是一个未知的提供者 我猜您是在尝试使用
Top10App
工厂,所以您需要将其注入
app.controller('MainController', ['$scope', 'Top10App', function ($scope, Top10App) {
Top10App.success(...)
}
另外,在我的index.html中,我应该将{index.series}}更改为{{Top10app.series}}当然。或者,如果您仍然想使用“show”作为服务的名称,请将“…factory('Top10App')”中的声明更改为“…factory('show')”。实际上,我读错了。很抱歉不,除非更改变量名,否则仍应使用索引。在这种情况下,服务名称无关紧要。好的。。但现在,在浏览器中,它显示的是第一名,而不是来自“shows.json”的数据?
// app.js
angular.module('app', []);
// maincontroller.js
angular.module('app').controller('myController, ...', [.......]);
// factory.js
angular.module('app').factory(...)
app.controller('MainController', ['$scope', 'Top10App', function ($scope, Top10App) {
Top10App.success(...)
}