web-dev-qa-db-ja.com

Angular js Jsonオブジェクトの解析

JsonオブジェクトにはキーlastLoginがあります。値は文字列です。

FirstNameJohnおよびBlakeを印刷しようとしています

$scope._users = [{
        "User": {
            "userid": "dummy",
            "lastlogin": "{\"employees\":[{\"firstName\":\"John\"},   {\"firstName\":\"Blake\"}]}",
        }
    }];

[〜#〜] fiddle [〜#〜]

任意の助けをいただければ幸いです。

11
RSM

こうやって

表示

<div ng-controller="MyCtrl">
    <div ng-repeat="user in _users" ng-init="myInfo=parJson(user.User.lastlogin)">
        <div ng-repeat="emp in myInfo.employees">{{emp.firstName}}</div>
    </div>
</div>

コントローラー

var myApp = angular.module('myApp', []);

function MyCtrl($scope) {
    $scope.getName = function (user) {
        return "Names";
    };

    $scope._users = [{
        "User": {
            "userid": "dummy",
                "lastlogin": "{\"employees\":[{\"firstName\":\"John\"},                   {\"firstName\":\"Blake\"}]}",
        }
    }];
    $scope.parJson = function (json) {
        return JSON.parse(json);
    }
    //console.log(JSON.parse($scope._users[0].User.lastlogin));
}

DEMO

angular.fromJson

このような

$scope.parJson = function (json) {
   return angular.fromJson(json);
}

DEMO

21
Anik Islam Abhi

パースします "lastlogin": "{\"employees\":[{\"firstName\":\"John\"}, {\"firstName\":\"Blake\"}]}"正しく使用できるデータ

angular.fromJson(User.lastLogin);

メソッドに内部オブジェクト、つまりlastloginを指定していることを確認してください。これにより、jsonデータから\や "などの無効な文字がすべて削除されます。

3
SachiN Ware.