如何访问AngularJS $ http.get方法'数据'会员

时间:2014-10-23 04:53:37

标签: asp.net-mvc angularjs angularjs-scope asp.net-web-api

我正在尝试从AngualrJS控制器中的一个WEB API字段获取日期值,以便转换日期格式。 这是我到目前为止所尝试的,但显然我们无法读取$ http.get方法中 data 参数的值,就像我正在尝试的那样。

userApp.controller('userController', ['$scope', '$http',
function ($scope, $http) {
 $http.get('api/User').success(function(data) {
        $scope.users = data; //this line is working fine

        //this line is undefined
        $scope.date = data.BirthDate;  // this is always undefined!!

任何帮助将不胜感激。

我的console.log(数据)结果如下:

 [Object, Object]
 0: Object
       $$hashKey: "object:3"
       Address: "120 Nullasrbor Ave"
       BirthDate: "2014-10-22T00:00:00"
       CurrentSalary: 75000
       ....
 1: Object
       ....

完成这项工作的好方法是由@denisazevedo提供的 主要是在视图中使用日期本身而不是js控制器:

{{user.BirthDate |日期: 'DD / MM / YYYY'}}

2 个答案:

答案 0 :(得分:2)

尝试调试并检查data对象以查看返回的内容。

编辑:试试这个:

$scope.date = data.data.BirthDate || data.BirthDate;

再次,检查您的data对象在调试中的确切位置或将其放入代码中:

console.log(data);

基于返回对象,它是一个数组 你可以让它迭代这个数组或指定位置:

data[0].BirthDate

-

要在表格中显示日期,请执行此操作(使用指定的日期格式):

<span ng-repeat="user in users">{{user.BirthDate | date:'dd/MM/yyyy'}}</span>

答案 1 :(得分:2)

尝试这个,

data[0].BirthDate

$http.get('api/User').success(function(data) {
    $scope.date = [];
    for (key in data) {
         $scope.date.push(data[key].BirthDate);
     }
....