Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Extjs 获取Ext.dataview.List实例以显示在Ext.tab.Panel实例内部_Extjs_Sencha Touch_Sencha Touch 2 - Fatal编程技术网

Extjs 获取Ext.dataview.List实例以显示在Ext.tab.Panel实例内部

Extjs 获取Ext.dataview.List实例以显示在Ext.tab.Panel实例内部,extjs,sencha-touch,sencha-touch-2,Extjs,Sencha Touch,Sencha Touch 2,我不知道如何在另一个对象中显示Ext.dataview.List对象。如果我尝试在视口中单独显示Ext.dataview.List对象,我可以看到我的数据。但是,如果我试图将它作为一个组件包含在另一个组件中,它会认为没有数据(从HTML输出判断),并且不会显示任何内容 因此,如果我有一个app.js,其代码如下: Ext.application({ name: 'MobileUnion', views: ['LocalsList'], models:

我不知道如何在另一个对象中显示Ext.dataview.List对象。如果我尝试在视口中单独显示Ext.dataview.List对象,我可以看到我的数据。但是,如果我试图将它作为一个组件包含在另一个组件中,它会认为没有数据(从HTML输出判断),并且不会显示任何内容

因此,如果我有一个app.js,其代码如下:

Ext.application({
    name: 'MobileUnion',

    views:          ['LocalsList'],
    models:         ['Local'],
    stores:         ['Locals'],

    launch: function() {
        // Initialize the main view
         var mainView = {
                xtype: 'localslist'
        };
        Ext.Viewport.add([mainView]);
    }
});
我可以这样设置MobileUnion.view.LocalsList,这样就不会产生任何列表:

Ext.define('MobileUnion.view.LocalsList', {
    extend: 'Ext.Container',
    alias: 'widget.localslist',
    requires: 'Ext.dataview.List',

    config: {
        items: [
            {
                itemId: 'localsList',
                store: 'Locals',
                loadingText: 'Loading Locals...',
                emptyText: '<div>No locals found.</div>',
                onItemDisclosure: true,
                itemTpl: '<div>{localName}</div><div>{designation}</div>'

            }
        ]
    }
});
app/store/Locals.js


在选项1中,您定义了一个容器,但实际上并没有向容器中添加项目。要将列表添加到容器中,请将
xtype:'list'
添加到项目数组中。接下来要做的是将容器布局设置为适合,否则列表将不会显示。这应该适合您:

Ext.define('MobileUnion.view.LocalsList', {
    extend: 'Ext.Container',
    alias: 'widget.localslist',
    requires: 'Ext.dataview.List',

    config: {
        layout: {
            type: 'fit' //set containers layout
        },
        items: [
            {
                xtype: 'list', //add xtype
                itemId: 'localsList',
                store: 'Locals',
                loadingText: 'Loading Locals...',
                emptyText: '<div>No locals found.</div>',
                onItemDisclosure: true,
                itemTpl: '<div>{localName}</div><div>{designation}</div>'

            }
        ]
    }
});
Ext.define('MobileUnion.view.LocalsList'{
扩展:“Ext.Container”,
别名:“widget.localslist”,
需要:“Ext.dataview.List”,
配置:{
布局:{
键入:“适合”//设置容器布局
},
项目:[
{
xtype:'列表',//添加xtype
itemId:'localsList',
商店:“本地人”,
loadingText:“正在加载局部变量…”,
emptyText:“找不到本地人。”,
对,是的,
itemTpl:“{localName}{designation}”
}
]
}
});
有关Sencha中布局的更多信息:


祝你好运

在选项1中,您定义了一个容器,但实际上并没有将项目添加到容器中。要将列表添加到容器中,请将
xtype:'list'
添加到项目数组中。接下来要做的是将容器布局设置为适合,否则列表将不会显示。这应该适合您:

Ext.define('MobileUnion.view.LocalsList', {
    extend: 'Ext.Container',
    alias: 'widget.localslist',
    requires: 'Ext.dataview.List',

    config: {
        layout: {
            type: 'fit' //set containers layout
        },
        items: [
            {
                xtype: 'list', //add xtype
                itemId: 'localsList',
                store: 'Locals',
                loadingText: 'Loading Locals...',
                emptyText: '<div>No locals found.</div>',
                onItemDisclosure: true,
                itemTpl: '<div>{localName}</div><div>{designation}</div>'

            }
        ]
    }
});
Ext.define('MobileUnion.view.LocalsList'{
扩展:“Ext.Container”,
别名:“widget.localslist”,
需要:“Ext.dataview.List”,
配置:{
布局:{
键入:“适合”//设置容器布局
},
项目:[
{
xtype:'列表',//添加xtype
itemId:'localsList',
商店:“本地人”,
loadingText:“正在加载局部变量…”,
emptyText:“找不到本地人。”,
对,是的,
itemTpl:“{localName}{designation}”
}
]
}
});
有关Sencha中布局的更多信息:

祝你好运

Ext.define('MobileUnion.store.Locals', {
    extend: 'Ext.data.Store',
    requires: ['MobileUnion.model.Local'],
    config: {
        model: 'MobileUnion.model.Local',
        data: [
            { localName: 'ABCD', designation: '123' },
            { localName: 'WXYZ', designation: '456' }
        ],
        autoLoad: true,
        sorters: [{ property: 'dateCreated', direction: 'DESC'}]
    }
});
Ext.define('MobileUnion.view.LocalsList', {
    extend: 'Ext.Container',
    alias: 'widget.localslist',
    requires: 'Ext.dataview.List',

    config: {
        layout: {
            type: 'fit' //set containers layout
        },
        items: [
            {
                xtype: 'list', //add xtype
                itemId: 'localsList',
                store: 'Locals',
                loadingText: 'Loading Locals...',
                emptyText: '<div>No locals found.</div>',
                onItemDisclosure: true,
                itemTpl: '<div>{localName}</div><div>{designation}</div>'

            }
        ]
    }
});