簡體   English   中英

AngularJS / Ionic App JSON解析

[英]Angularjs/Ionic App json parsing

在ionic / angularjs應用程序中,我想解析以下json文件(由服務器生成)的內容

 [
    {
        "raw": {
            "id": "2",
            "pid": "0",
            "sorting": "0",
            "tstamp": "1433706234",
            "Alias": "-2",
            "Menu1": "Test",
            "Menu2": "Test1",
            "From": "1433714400",
            "To": "1434060000",
            "Published": "1"
        },
        "text": {
            "Alias": "-2",
            "Menu1": "Test",
            "Menu2": "Test1",
            "From": "08.06.2015",
            "To": "12.06.2015",
            "Published": "1"
        },
        "attributes": {
            "Alias": "Alias",
            "Menu1": "Menu",
            "Menu2": "Menu",
            "From": "Datum From",
            "To": "Datum To",
            "Published": "Public"
        },
        "class": "first even"
    },
    {
        "raw": {
            "id": "1",
            "pid": "0",
            "sorting": "0",
            "tstamp": "1433706235",
            "Alias": "",
            "Menu1": "Test2",
            "Menu2": "Test21",
            "From": "1431295200",
            "To": "1431640800",
            "Published": ""
        },
        "text": {
            "Alias": "",
            "Menu1": "Test2",
            "Menu2": "Test21",
            "From": "11.05.2015",
            "To": "15.05.2015",
            "Published": ""
        },
        "attributes": {
            "Alias": "Alias",
            "Menu1": "Menu",
            "Menu2": "Menu",
            "From": "Datum From",
            "To": "Datum To",
            "Published": "Public"
        },
        "class": "last odd"
    }
]

我想這樣解析數據:

   .controller('GetJson', function ($scope, $http) {
        var obj = {content:null};      
        $http.get("test.json")
            .success(function (data) {
            obj.content = data;
        });
        return obj;
        $scope.all = obj;
        $scope.menu1 = obj.data.text.Menu1;
    });

並給出:

<ion-view view-title="test" ng-controller="GetJson">
<ion-content class="padding">
    {{all}}
    {{menu1}}
</ion-content>
</ion-view>

但這不起作用。 如何從json獲取數據? 例如,如果我想得到:

文本-​​> Menu1->“測試”,或者如果我想獲取屬性-> Menu1-> Menu

預先感謝您的幫助

編輯:它與此工作:

.controller('GetJson', function ($scope, $http) {

    $http.get("test.json")
        .success(function (data) {
        $scope.all = data;    
        $scope.menu1 = data[0].text.Menu1;  
    });   
})

為什么在控制器中使用return語句? 為什么不只是:

.controller('GetJson', function ($scope, $http) { 
        $scope.all = obj;
        $scope.menu1 = obj.data.text.Menu1; // this line won't work. See comment

        $http.get("test.json").success(function (data) {
            $scope.all = data;
        });
    });

我認為也許代碼中的控制器在設置$ scope.all和$ scope.menu1的值之前返回

您的對象是數組,而“數據”不是屬性。 因此,您無法訪問“ obj.data.text.Menu1;”。 它應該是obj [0] .text.Menu1;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM