1

我正在尝试使用 Sencha Touch 2 将本地 json 文件加载到数据视图中。

使用 Firebug 检查时 - Sencha 正在加载该文件,但由于某种原因未显示该文件。

任何想法为什么?

这是我的代码(HTML 是基本的 Sencha html):

    Ext.require([
    'Ext.Panel',
    'Ext.tab.Panel',
    'Ext.Ajax'
]);

new Ext.application({
    name: 'MyApp',
    useLoadMask: true,
    launch: function () {

        Ext.regModel('City', {
           fields: [
            {name:'ID', type:'string'},
            {name:'Name', type:'string'}
           ]
        });

        var CitiesStore = new Ext.create('Ext.data.Store',{
            autoLoad: true,
            storeId: 'CitiesStore',
            model: 'City',
            proxy: {
                type: 'ajax', // ajax is for same domain, jsonp for cross-domain
                url: 'cities.json',
                reader: {
                    type: 'json',
                    root: 'cities'
                }
            }
        });

        Ext.create('Ext.TabPanel',{
            fullscreen: true,
            tabBarPosition: 'bottom',
            scrollable: true,
            items: [
                {
                    title: 'Home',
                    iconCls: 'home',
                    html: 'Welcome to my app',
                    style: 'text-align: center;'
                },
                {
                    title: 'Search',
                    iconCls: 'search',
                    items: [
                        Ext.create('Ext.DataView', {
                            store: 'CitiesStore',
                            itemConfig: {
                                tpl: '<h2>{Name}</h2>'
                            }
                        })
                    ]
                },
                {
                    xtype: 'toolbar',
                    title: 'My App',
                    dock: 'top'
                }
            ]
        }).setActiveItem(1); // this is set for debugging only

    }
});

任何 json 都非常简单

{"cities":[{"ID":1,"Name":"new york"},{"ID":2,"Name":"las vegas"},{"ID":3,"Name":"los angeles"}]}

非常感谢!

4

3 回答 3

2

我遇到了列表或数据视图不显示的问题,除非父容器的宽度设置为某个值或布局设置为“适合”。如果有任何不同,请尝试:

    title: 'Search',
    iconCls: 'search',
    layout: 'fit',
于 2012-01-09T07:19:06.013 回答
0

快速浏览了一下......几件事 - 但首先您对商店的引用不正确。

在您的 DataView 中,您应该不需要引号:

store: CitiesStore,

此外,您在使用 Ext.Create 时不需要new商店中的关键字。

这至少应该让你更进一步。

于 2012-01-05T17:46:30.083 回答
0

你在用火狐吗?Firefox 和 IE 在使用 Chrome 或 Safari 查看 ply 时有时会出现问题。

于 2012-01-06T17:13:22.163 回答