将 json 数据加载到工厂文件中
Load json data into the factory file
我是 AngularJS 的新手,刚开始学习。如何在不直接添加整个数据的情况下将 JSON 文件加载到 script.js 文件中。
这是程序的代码:
<!DOCTYPE html>
<html ng-app="quizApp">
<head>
<meta charset="utf-8" />
<title>QuizApp</title>
<link rel="stylesheet" href="style.css" />
<script src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js"></script>
<script src="script.js"></script>
</head>
<body>
<div class="container">
<h1 class="title">QuizApp</h1>
<quiz/>
</div>
</body>
$http.get('ques.json')
.then(function(result){
$scope.questions = result.data;
});
您需要更正粘贴在 ques.json
中的 json(通过使用引号 ""
),否则如果您将调用 $http.get()
,那么您将因无效而出现异常json。
一旦您更正 ques.json
中的 json 内容,然后只需使用 $http
并将结果分配给问题变量。
例如
app.factory('quizFactory', function($http) {
var questions = [];
$http.get('ques.json').success(function(data) {
questions = data;
})
return {
getQuestion: function(id) {
if(id < questions.length) {
return questions[id];
} else {
return false;
}
}
};
});
这是demo
我是 AngularJS 的新手,刚开始学习。如何在不直接添加整个数据的情况下将 JSON 文件加载到 script.js 文件中。 这是程序的代码:
<!DOCTYPE html>
<html ng-app="quizApp">
<head>
<meta charset="utf-8" />
<title>QuizApp</title>
<link rel="stylesheet" href="style.css" />
<script src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js"></script>
<script src="script.js"></script>
</head>
<body>
<div class="container">
<h1 class="title">QuizApp</h1>
<quiz/>
</div>
</body>
$http.get('ques.json')
.then(function(result){
$scope.questions = result.data;
});
您需要更正粘贴在 ques.json
中的 json(通过使用引号 ""
),否则如果您将调用 $http.get()
,那么您将因无效而出现异常json。
一旦您更正 ques.json
中的 json 内容,然后只需使用 $http
并将结果分配给问题变量。
例如
app.factory('quizFactory', function($http) {
var questions = [];
$http.get('ques.json').success(function(data) {
questions = data;
})
return {
getQuestion: function(id) {
if(id < questions.length) {
return questions[id];
} else {
return false;
}
}
};
});
这是demo