我有一个JSON
文件data.json
,与下面的文件位于同一文件夹中。当我运行它时,它会返回 not found 。
我还尝试将$http.get
请求放入工厂,但结果相同 - 找不到。我也尝试按照其他地方的建议将.json
扩展名更改为.txt
,但这也没有用。
其余代码附带了角度种子项目。
是否有其他文件中缺少的内容或其他获取请求的技巧?
'use strict';
var myApp = angular.module('myApp.view1', ['ngRoute']);
myApp.config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/view1', {
templateUrl: 'view1/view1.html',
controller: 'View1Ctrl'
});
}]);
myApp.controller('View1Ctrl', [
'$scope',
'$http',
function($scope, $http) {
$http.get('data.json')
.then(function(res){
$scope.quiz = res.data
});
}]);
答案 0 :(得分:2)
这是plnkr:https://plnkr.co/edit/Lf6QcyKSn4DsQrgJhUq6?p=preview
'use strict';
var app=angular.module('myApp.view1', [])
app.factory('mainInfo',
function($http) {
var obj={};
obj.method =function(){
return $http.get('tag.json')
}
return obj;
})
app.controller('View1Ctrl', [
'$scope',
'$http',
'mainInfo',
function($scope, $http, mainInfo) {
mainInfo.method().success(function(response) {
$scope.myWelcome = response;
debugger
});
}]);
尝试将.json文件放在存在js的同一文件夹中。
答案 1 :(得分:0)
.json
文件不能与js
文件位于同一文件夹中。相对路径相对于包含index.html
文件进行解析。如果你有这个结构:
+-index.html
|-folder
| \-data.json
\-js
\-app.js
您必须在app.js中$http.get("folder/data.json")
才能使其正常运行。