在Angular控制器中检索json数据

时间:2016-12-01 12:33:31

标签: javascript angularjs json

我想在我的app控制器中从JSON文件中获取几个值。

我有一个看起来像这样的JSON文件:

{
   "login": [
      {
         "username": "admin",
         "password": "admin"
      }
    ],
    "header": [
       {
          "subTitle": "Hello",
          "color": "red"
        }
    ]
 }

我正在尝试检索这样的值:

app.controller('loginCtrl', function($http, $scope) {
   data = $http.get('data.json');
   console.log(data.login.username);
}

但是,我进入控制台的所有内容都是TypeError: Cannot read property 'username' of undefined

2 个答案:

答案 0 :(得分:-1)

data = $http.get('data.json');
data.then(function(result){
    console.log(result.login[0].username);
});

答案 1 :(得分:-1)

即使你的javascript是同步的,你所做的调用总是asynch

 $http.get('data.json').then(function (response) {
console.log(response.data)
});

所以在你的术语中javascript调用了get函数,在返回结果之前它执行了这个console.log(data.login.username); 所以你没有得到预期的结果