我正在使用AngularJS 1.3.5,我正在尝试从json文件中获取信息。 这是我的代码: HTML文件:
<!DOCTYPE html>
<html>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.5/angular.min.js"></script>
<script src="js/controllers/MainController.js"></script>
<script src="js/services/myapp.js"></script>
<script src="js/app.js"></script>
<body ng-app="app">
<div ng-controller="MainController">
<div ng-repeat="content in contents">
<a ng-href="{{data.FolderPath}}">{{data.FolderPath}}</a>
</div>
</div>
</body>
</html>
Javascript文件: MainController.js
app.controller('MainController', ['$scope', 'myapp', function($scope, myapp) {
myapp.success(function(data) {
$scope.FolderPath = data;
});
}]);
myapp.js
app.factory('myapp', ['$http', function($http) {
return $http.get('C:\Users\nouri\Desktop\configFile.json')
.success(function(data) {
return data;
})
.error(function(err) {
return err;
});
}]);
最后是app.js
var app = angular.module('FolderApp', []);
答案 0 :(得分:2)
您的代码似乎有2个问题
您要加载脚本的顺序。加载app.js,然后加载services / myapp.js,然后加载controllers / MainController.js。
<script src="js/app.js"></script>
<script src="js/services/myapp.js"></script>
<script src="js/controllers/MainController.js"></script>
&#13;
角度模块的名称是FolderApp,但您已将其引用为&#39; app&#39;。将其更改为
<body ng-app="FolderApp">
&#13;
修改强>
您使用工厂的方式存在问题。您应该返回一个包含方法的对象,该方法将调用API并返回$ http promise。尝试这样的事情:
的厂强>
app.factory('myapp', ['$http', function($http) {
return {
getJson: function() {
return $http.get('C:\Users\nouri\Desktop\configFile.json');
}
}
}]);
<强>控制器强>
app.controller('MainController', ['$scope', 'myapp', function($scope, factory) {
factory.callApi()
.then(function(data) {
$scope.FolderPath = data;
});
}]);
看看这个fiddler。
答案 1 :(得分:1)
文件的顺序很重要......将您的app.js
置于顶部,并且您的html中定义的app-name
也应与js
匹配。
答案 2 :(得分:1)
尝试在其他文件之前加载<script src="js/app.js"></script>
(但在角核之后)
答案 3 :(得分:1)
<body ng-app="app">
但在你正在使用的js中:
var app = angular.module('FolderApp', []);
更改2中的一个并放置
<script src="js/app.js"></script>
在顶部,你应该没问题
答案 4 :(得分:1)
将ng-app =“app”更改为ng-app =“FolderApp”
答案 5 :(得分:0)
我解决了这个问题,实际上出于安全考虑,AngularJS无法读取本地json文件。它只读在线的。谢谢那些帮助我的人^^