在HTML sessionStorage JSON数据angularjs中显示

时间:2016-03-22 16:04:15

标签: angularjs json sessionstorage

我只是想知道如何在我的html

中很好地显示我的sessionStorage JSON数据

我的数据存储在我的sessionStorage中:

enter image description here

Bellow是我的控制器

app.controller('optionController', ['$scope', function($scope) {
    var myObject = JSON.parse(sessionStorage.getItem("flight"));
    $scope.getItemSS = myObject;
    };
}])

Bellow是我尝试展示的方式

<section ng-controller="optionController">
    <ul ng-repeat="data in getItemSS">
        <li>From <strong>{{ data.departure }}</strong></li>
        <li>To <strong>{{ data.destination }}</strong></li>
        <li>Departure at <strong>{{ data.time.departure }}h</strong></li>
        <li>Arrival at <strong>{{ data.time.destination }}h</strong></li>
        <li>For <strong>{{ data.firstName }} {{ data.lastName }}</strong></li>
        <li>Only for <strong>{{ data.price }}€</strong></li>
        <p>Congratulation, you confirmed your flight! An email has been sent to your email <strong>{{ data.email }}</strong></p>
    </ul>
</section>

我无法显示我的数据。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

您的代码暗示按键flight的会话存储项是一个数组 - 事实并非如此。它是一个顶级(且唯一)键被称为flights的对象,它指向一个数组。

这是您要使用的代码:

var myObject = JSON.parse(sessionStorage.getItem("flight"));
$scope.getItemSS = myObject.flights;

而不是

var myObject = JSON.parse(sessionStorage.getItem("flight"));
$scope.getItemSS = myObject;

或者,您可以使用相同的JS并将视图更改为:

<ul ng-repeat="data in getItemSS.flights">