【问题标题】:Parse complex JSON in Sencha Touch在 Sencha Touch 中解析复杂的 JSON
【发布时间】:2011-03-16 15:29:40
【问题描述】:

我在 Sencha Touch 论坛上询问过,但没有得到很好的回应(嗯,事实上没有)。我想知道是否有人可以提供帮助。我想根据从 PHP 脚本收到的 JSON 响应创建项目列表。下面是从 PHP 收到的 JSON 示例:

{
   "friends":[
      {
         "friend":{
            "id":"4",
            "forename":"Chris",
            "surname":"Major",
            "verboseName":"Chris Major",
            "phoneNumber":"07931655247",
            "longitude":"-0.410909",
            "latitude":"52.999245",
            "email":"major@lincsmps.co.uk",
            "lastRefresh":null,
            "joinDate":"1294839423"
         },
         "networks":null,
         "approved":"1"
      },
      {
         "friend":{
            "id":"2",
            "forename":"Marta",
            "surname":"Urbanowicz",
            "verboseName":"Marta Urbanowicz",
            "phoneNumber":"07716021468",
            "longitude":"-0.0338518",
            "latitude":"52.9773876",
            "email":"urb.marta@googlemail.com",
            "lastRefresh":null,
            "joinDate":"1294836801"
         },
         "networks":null,
         "approved":"1"
      }
   ]
}

我想知道如何将其解析为 DataStore,然后在 Sencha Touch 中输出一个分组列表。虽然有对 ListView 使用标准 JSON 响应的示例,但似乎没有像这样的嵌套示例...

感谢您的帮助。

【问题讨论】:

    标签: javascript json sencha-touch


    【解决方案1】:

    本,

    您可能想要做的是使用您想要的字段(可能是 id、姓氏、电子邮件、网络、已批准)声明您的 Friends 商店

    然后当使用 Ajax 远程调用进行远程调用时,它只会传回原始数据。

    此时您将拥有“朋友”对象。然后,您可以遍历每个“朋友”,而不是添加“朋友”,而是创建新对象:

    var 朋友 = {id:'2', surname:'whatever', email:'whatever@blah.com'}

    制作这些新朋友结构的数组,并将它们传递到存储中。这将展平或简化您复杂的 json 结构。

    希望对您有所帮助,如果您需要,我可以提供更多详细信息。

    【讨论】:

    • @BenM 与 jquery?你是怎么做到的?
    猜你喜欢
    • 2012-08-19
    • 1970-01-01
    • 1970-01-01
    • 2013-01-13
    • 2011-08-18
    • 1970-01-01
    • 1970-01-01
    • 2019-07-11
    相关资源
    最近更新 更多