嵌套列表未在sencha中加载

时间:2012-04-26 11:22:46

标签: sencha-touch-2 nested-lists

我正在尝试将嵌套列表加载到我的Sencha应用上。问题是我不熟悉它,我不确定我使用的json文件是否正确。

[
    {
        "text":[


            {
                "text":"1.1.1",
                "leaf":true

            }],
        "text":[

            {
                "text":"1.1.1",
                "leaf":true

            }
        ]


    }
]

这是我的商店代码

//Defining the store for the Nested List
Ext.define('InfoImage.store.nestedListStore', {
    extend: 'Ext.data.TreeStore',
    requires: 'InfoImage.model.nestedListModel',
    id:'nestedListStore',
    config:{

        //Calling the required model for the Work Item List
        model : 'InfoImage.model.nestedListModel',
        //Defining the proxy for the Work Item List to pull the data for the List
        proxy : {
            type : 'ajax',
            url : 'app/model/data/list.json',
            reader: {
                type: 'json',
                root: 'items'

            }
        },
        autoLoad: true


    }
});

我的主要代码是

Ext.define("InfoImage.view.nestedList", {
    extend:'Ext.NestedList',
    xtype:'nestedList',
    id:'nestedList',

    config:{
        fullscreen:'true',
        title:'Nested List',
        xtype:'nestedList',
        //displayField : 'text',
        html:'Nested List on its way!!!',
        store:'nestedListStore'
        //itemTpl:'{text}'
    }
});

显示的输出是[object object]。我不知道缺少什么。非常感谢。

2 个答案:

答案 0 :(得分:1)

首先,你的Json是一个有效的json。始终通过粘贴jsonlint.com

上的json来检查有效的json

其次,我看到你已经注释了

displayField:'text' 

属性。如果您未向displayField提供nestedlist,则无法知道数据存储中的哪些项目会显示在列表中。

可能这就是为什么你在列表中得到[object Object]作为你的o / p。

取消注释以上行并检查。

答案 1 :(得分:0)

您的JSON似乎无法与Ext.NestedList一起使用,因为text是模型的一个字段,不应在JSON文件中声明为rootProperty。

首先,假设您有此模型定义:

Ext.define('ListItem', {
    extend: 'Ext.data.Model',
    config: {
        fields: ['text']
    }
});

根据您的数据,您的JSON文件应如下所示:

items: [
{
    text: '1.1',
    items: [
    { text: '1.1.1', leaf: true },
    { text: '1.1.2', leaf: true }
    ]
    }
]

您还必须将此配置添加到商店defaultRootProperty: 'items'