我正在尝试使用角度工厂和服务从文件读取JSON数据。但是Angular无法看到我定义的服务。这是我的工厂:
//jsonService.js
angular.module('jsonService', ['ngResource'])
.factory('JsonService', function($resource) {
alert($resource)
return $resource('example.json',{}, {
getData: {method:'GET', isArray: false}
});
});
而我的控制器:
//app.js
'use strict';
angular.module('myApp', [
'ngRoute',
'myApp.view1',
'myApp.view2',
'myApp.version',
'jsonService'
]).config(['$routeProvider', function($routeProvider) {
$routeProvider.otherwise({redirectTo: '/view1'});
}]).
controller('mainController', ['JsonService', function($scope, JsonService){
JsonService.getData(function(data) {
console.log("Test");
$scope.length = data.length;
})}]);
我得到:
“错误:JsonService未定义”
最佳答案
您正在注入'JsonService'
作为函数的第一个参数,但是您正在使用JsonService作为函数的第二个参数。
应该为['JsonService', '$scope', function($scope, JsonService){
,或者如果不需要$scope
,则为['JsonService', function(JsonService){