试试这样,注意路径
function dataController($http,$scope) {
$http.get("json/text.json").success(function(data) {
$scope.data = data.freetrial;
});
}
很明显你是理解错了执行的先后顺序,你这样测试下:
$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请求如果你没设定同步的话,请求后面定义的代码会先执行
});