使用Angular从json响应中显示特定值

时间:2016-03-01 21:13:39

标签: javascript angularjs json angularjs-scope

相当新的Angular,多年来习惯了ASP / MVC / C#/ Jquery所以有点学习曲线。但是,我遇到的问题应该很简单,基于我对其他框架的了解,并没有按预期工作。

所以我有一个API控制器的get请求,它返回如下数据:

{"user":{"FirstName":"John","LastName":"Smith","EmailAddress":"user@example.com"}}

模块:

(function() {
"use strict";
//Getting the existing module
angular.module("appName")
    .controller("userDataController", function($scope, $http) {
        $http.get("/api/user")
            .then(function (response) {
                //Example response 
                //{"user":{"FirstName":"John","LastName":"Smith","EmailAddress":"user@example.com"}}
                $scope.userData = response.data;
            });
    });
})();

如果我在我的视图{{userData}}中输出,我会显示数据字符串,因为我知道范围是给名为变量的。

但是,我似乎无法显示个别数据,例如:FirstName。

我在userData对象上尝试了ng-repeat但是没有做任何事情。我也尝试过各种各样的东西来显示FirstName或EmailAddress但没有运气。我做了一些根本错误的事情吗?

2 个答案:

答案 0 :(得分:1)

假设它实际上是一个JSON对象:{{userData.user.FirstName}}

否则:

$scope.userData = angular.fromJson(response.data)

然后你仍然可以使用上面的代码。

答案 1 :(得分:0)

可能是响应是内容类型文本而不是预期的json? 看看响应标题。