提问人:Diana 提问时间:3/4/2012 最后编辑:Narendra JadhavDiana 更新时间:4/14/2018 访问量:524
嵌套列表无限循环与 Sencha Touch 1
Nested List infinite loop with Sencha Touch 1
问:
我是 Sencha Touch 和网络编程的新手。我正在尝试显示一个嵌套列表,并且一遍又一遍地循环获取第一级项目。
我已经查看了文档和厨房水槽示例,但我就是无法正确理解。我将非常感谢提示!
这是我的代码:
Ext.regModel('Site', {
fields: [{
name: "sitename",
type: "string"
}, {
name: "last_connection",
type: 'auto'
}]
});
Ext.setup({
icon: 'icon.png',
tabletStartupScreen: 'tablet_startup.png',
phoneStartupScreen: 'phone_startup.png',
glossOnIcon: false,
onReady: function() {
var store = new Ext.data.TreeStore({
model: 'Site',
proxy: {
type: 'ajax',
url: 'network.json',
reader: {
type: 'json',
root: 'items'
}
}
});
var nestedList = new Ext.NestedList({
fullscreen: true,
title: 'Netzwerk',
displayField: 'sitename',
plugins: [new Ext.LeafSelectedPlugin()],
// add a / for folder nodes in title/back button
getTitleTextTpl: function() {
return '{' + this.displayField + '}<tpl if="leaf !== true">/</tpl>';
},
// add a / for folder nodes in the list
getItemTextTpl: function() {
return '{' + this.displayField + '}<tpl if="leaf !== true">/</tpl>';
},
store: store
});
}
});
以及 json-file 的结构(仅以一个节点为例):
{
"items": [{
"id": "11",
"sitename": "Site A",
"items": [{
"id": "11",
"sitename": "Endpoint 1",
"last_connection": "2012-03-02T10:03:22+0100",
"ping_time": 63,
"leaf": true
}, {
"id": "12",
"sitename": "Endpoint 2",
"last_connection": "2012-03-02T10:03:22+0100",
"ping_time": 57,
"leaf": true
}],
"last_connection": "2012-03-02T10:03:22+0100",
"ping_time": 57
}]
}
谢谢!
答:
0赞
erikvimz
5/19/2015
#1
我知道这篇文章有点旧,但如果它已经得到回答,它会为我节省 2 个“漫长”的人生,所以这里是:
我发现我错过了里面。根据您的 JSON,您需要将此属性设置为 。defaultRootProperty
TreeStore
items
这是你应该是什么样子的:TreeStore
var store = new Ext.data.TreeStore({
model: 'Site',
defaultRootProperty: 'items',
proxy: {
type: 'ajax',
url: 'network.json',
reader: {
type: 'json',
root: 'items'
}
}
});
评论