Sencha Touch - не удается загрузить локальный файл json - PullRequest
1 голос
/ 05 января 2012

Я пытаюсь использовать Sencha Touch 2 для загрузки локального файла json в представление данных.

При проверке с помощью Firebug - файл загружается Sencha, но по какой-то причине он не отображается.

есть идеи, почему?

Вот мой код (HTML - это базовый 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"}]}

Большое спасибо!

Ответы [ 3 ]

2 голосов
/ 09 января 2012

У меня были проблемы с тем, что списки или представления данных не отображаются, если только для родительского контейнера не задано значение ширины или макет не настроен на «fit».Если это что-то меняет, попробуйте:

    title: 'Search',
    iconCls: 'search',
    layout: 'fit',
0 голосов
/ 06 января 2012

вы используете Firefox? Firefox и IE иногда создают проблемы при просмотре используйте Chrome или Safari.

0 голосов
/ 05 января 2012

Очень быстрый взгляд ... Несколько вещей - но, во-первых, ваша ссылка на магазин неверна.

В вашем DataView вам не нужны цитаты:

store: CitiesStore,

Также вам не нужно ключевое слово new в магазине, так как вы используете Ext.Create.

Это должно немного продвинуть вас вперед.

...