如何在angular中读取json文件
how to read json file in angular?
你能告诉我如何读取json文件吗?我能够读取json文件使用控制器,但有办法从工厂读取文件。当我使用工厂得到空竞争..为什么?http://plnkr.co/edit/THdlp00GuSk1NS6rqe5k?p=preview
app.controller("ctrl",['$scope',"$http",'mainInfo',function(s,$http,mainInfo){
s.students = [];
s.guitarVariable = [];
console.log(mainInfo);
s.guitarVariable = mainInfo.content;
/* $http.get('color.json').success (function(data){
s.guitarVariable = data;
}).error(function(err){
alert(err);
}); */
}])
使用这个代码在控制器我能够得到数据。但使用工厂我得到null
/* $http.get('color.json').success (function(data){
s.guitarVariable = data;
}).error(function(err){
alert(err);
}); */
Angular服务是单例的。其目的是为应用程序的其余部分提供一个表示服务的单一对象。您需要将HTTP调用作为将从服务返回的对象的方法。然后将服务注入到控制器中,并从中调用服务方法。下面是一个例子:
服务: app.factory('mainInfo', function($http) {
return {
//call this method from the controller
getColors: function() {
return $http.get('color.json'); //return the promise object. Use in controller
}
}
});
控制器:
app.controller("ctrl",['$scope',"$http",'mainInfo',function($http,mainInfo){
mainInfo.getColors().success(function(data) {
alert(data);
}).error(function() {
alert("Not working");
});
}]);
对于一个简单的$http获取1个文件,我可能只是在控制器中这样做,但是如果你想使用一个工厂,你想返回$http.get('file.json')
,然后使用成功等待承诺解决。
看起来像这个plnkr
对于API,我将使用$resource - video关于资源设置
相关文章:
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 正在读取JSON,数据未显示
- 使用jquery读取Json数据
- 如何使用jquery ajax和jsonp在您自己的域上读取json数据
- 使用Angular读取JSON
- 修改d3.js圆环图以读取json数组
- 读取 json 文件 Javascriot 后返回一个数组
- 使用Javascript和PHP读取JSon字符串
- 无法通过rest api读取json变量
- 从d3.js中的文件读取json数据不起作用
- Uncaught SyntaxError:尝试读取json数据时出现意外数字
- 以javascript中的字符串形式从服务器读取json文件
- 使用angularjs中的JSONObject读取json
- 单击按钮时使用JS读取JSON文件
- 如果没有JavaScript中的jQuery,我如何读取.json文件
- javascript在读取JSON文件后无法迭代数组
- 使用 Javascript 读取 JSON 对象(错误)
- JQuery 如何读取 JSON 缓存
- 从 PHP 读取 json 响应并推送到 javascript 多维数组中
- 当我不知道密钥的名称时,如何读取 JSON 对象