0

我的简化商店:

Ext.define('PT.store.DealTree', {
    extend: 'Ext.data.TreeStore',
    proxy: {
        type: 'rest',
        url:  '/dealTree',
        reader: { type: 'json', root: 'children', successProperty: 'success' },
    },
    root: { name: 'children', expanded: true }
})

我的简化网格:

Ext.define('PT.view.deal.DealSelectionGrid', {
    extend: 'Ext.tree.Panel',
    alias: 'widget.dealSelectionGrid',
    rootVisible: false,
    fields: ['text', 'date'],

    store: 'DealTree',
    columns: [
        { xtype: 'treecolumn', text: 'Deal', dataIndex: 'text' },
        { xtype: 'datecolumn', text: 'Date', dataIndex: 'date' }
    ]   
});

简化响应示例:

[ { text: 'aNode',
    id: 522f7dd2323544c424000034,
    leaf: true,
    date: '2013/10/10' } ]

Date 列中没有出现任何内容,但text, leaf,id都可以正常工作。我显然错过了一些东西。目前,我没有使用模型,因为每个级别都是不同的模型,默认情况下不支持 - 因此我让 ExtJS 为我添加所有 NodeInterface 装饰。

4

1 回答 1

2

fields配置进入商店,而不是树组件。

例如,您的代码显示该商店的日期:

Ext.define('PT.store.DealTree', {
    extend: 'Ext.data.TreeStore',
    proxy: {
        type: 'rest',
        url:  '/dealTree',
        reader: { type: 'json', root: 'children', successProperty: 'success' }
    },

    // fields option here!
    fields: ['text', 'date'],

    root: {
        name: 'children',
        expanded: true,
        children: [{
            text: 'aNode',
            id: '522f7dd2323544c424000034',
            leaf: true,
            date: '2013/10/10'
        }]
    }
});
于 2013-09-10T22:42:18.220 回答