我有一点问题,我需要将一些json数据加载到我的网格中,但我有这样的特定json格式:
{"response":[
76297,
{"aid":66132303,"owner_id":30729520,"artist":"Шакира - Танго","title":"So objection!! I don't wanna be the exception to get a bit of your attention... I love you for free and I'm not your mother, but you don't even bother... Objections!! I'm tired of this triangle... GOT DIZZY DANCING TANGO","duration":224,"url":"http:\/\/cs1663.vkontakte.ru\/u17640367\/audio\/ebde4092fde5.mp3","lyrics_id":"2203614"},
{"aid":129159521,"owner_id":23962687,"artist":"Yann Tiersen","title":"Mother's Journey (Ennja Remix)","duration":281,"url":"http:\/\/cs6000.vkontakte.ru\/u97497795\/audio\/fb309491bc82.mp3","lyrics_id":"21301612","album":"21017129"},
{"aid":81267321,"owner_id":673065,"artist":"Hurts","title":"Mother Nature","duration":170,"url":"http:\/\/cs4633.vkontakte.ru\/u673065\/audio\/d329378eb2d2.mp3","lyrics_id":"5693202"}]
}
因此,数组的第一个元素是总记录数,其他元素是要加载的记录。 如果我尝试将这些记录加载到我的网格中,我在底部有空行,有什么解决方案?我应该使用一些“自定义”阅读器,如何实现它?
答案 0 :(得分:3)
是。很可能您需要首先扩展标准Json读取器(Ext.data.reader.Json)来解析长度并开始解析第二个项目中的记录。
更新:实际上很容易实现。
首先,您需要确定标准阅读器不按您希望的方式运行的位置。添加标准阅读器类的跟踪,以查看正在发生的事情。最有可能是readResponse()
方法。
创建自己的阅读器类,扩展标准类。简单的继承。
使用新逻辑覆盖您需要的方法。
ExtJs代码编写得很好并且评论过。我发现阅读和理解它非常有趣。
作为旁注,我想补充一点,这个任务(用你的功能扩展现有的ExtJs代码)对于更好地理解ExtJs如何在里面工作是一个巨大的帮助,在那之后你会觉得使用ExtJs更加舒适。