Ram*_*day 5 json factory angularjs
我是AngularJS的新手.我只想将JSON文件数据加载到位于工厂中的变量中.
myApp.factory('quizFactory', function () {
var questions = [
{
"setId":1,
"question":"What is the value of the 7 in the following number? 850,765",
"options": ["70", "7", "7000", "700"],
"answer": 3
},
{
"setId":2,
"question":"Is 7 & 9 even or odd?",
"options": ["Even", "Odd", "Can't Say", "Dont know"],
"answer": 1
},
{
"setId":3,
"question":"In the number 5,281,946 what is the value of the 3rd place?",
"options": ["100", "10,000", "1,000,000", "1,000"],
"answer": 0
},
{
"setId":4,
"question":"Is 12 + 50 even or odd?",
"options": ["Even", "Odd", "Can't Say", "Dont know"],
"answer": 0
},
{
"setId":5,
"question":"What does the 3 represent in the number below? 3051",
"options": ["3", "30", "300", "3000"],
"answer": 3
}
];
return {
getQuestion: function(id) {
if(id < questions.length) {
return questions[id];
} else {
return false;
}
}
};
});
Run Code Online (Sandbox Code Playgroud)
上面的代码存储在app.js文件中,我的JSON文件与上面的相同.
[
{
"setId":1,
"question":"What is the value of the 7 in the following number? 850,765",
"options": ["70", "7", "7000", "700"],
"answer": 3
},
{
"setId":2,
"question":"Is 7 & 9 even or odd?",
"options": ["Even", "Odd", "Can't Say", "Dont know"],
"answer": 1
},
{
"setId":3,
"question":"In the number 5,281,946 what is the value of the 3rd place?",
"options": ["100", "10,000", "1,000,000", "1,000"],
"answer": 0
},
{
"setId":4,
"question":"Is 12 + 50 even or odd?",
"options": ["Even", "Odd", "Can't Say", "Dont know"],
"answer": 0
},
{
"setId":5,
"question":"What does the 3 represent in the number below? 3051",
"options": ["3", "30", "300", "3000"],
"answer": 3
}
];
Run Code Online (Sandbox Code Playgroud)
我也尝试过这个问题.
您可以使用$http来读取 json 文件。例如
$http.get('someFile.json').success(function(data) {
questions = data;
});
Run Code Online (Sandbox Code Playgroud)