3 回答
TA贡献1884条经验 获得超4个赞
很明显你是理解错了执行的先后顺序,你这样测试下:
$scope.callback=function(){
console.log($scope.phones)//输出undefined
console.log(test)//输出空Object
}
var test=new Object();
$http.get('phones/phones.json').success(function(data)
{
$scope.phones = data;
test = data;
console.log($scope.phones)//正常输出JSON对象
console.log(test)//正常输出JSON对象
$scope.callback();//换句话就是,ajax请求如果你没设定同步的话,请求后面定义的代码会先执行
});
TA贡献1887条经验 获得超5个赞
用angularjs读取本地json的方法如下:
1、本地json文件的内容如下:
[{ "text":"learn angular", "done":true },
{ "text":"build an angular app", "done":false},
{ "text":"something", "done":false },
{ "text":"another todo", "done":true }]
2、利用angularjs读取的方法:
var App = angular.module('App', []);
App.controller('TodoCtrl', function($scope, $http) {
$http.get('todos.json')
.then(function(res){
$scope.todos = res.data;
});
});
添加回答
举报