Ext JS 4, использующий JSON в Proxy Reader, не будет загружать записи - PullRequest
1 голос
/ 10 ноября 2011

Я пытаюсь использовать Ext JS 4 и играл с одним из примеров сетки и хотел использовать JSON, а не XML. Не важно, как я кодирую данные JSON, у меня нет записей для загрузки.

Вот мой код:

Ext.define('Plant', {
    extend: 'Ext.data.Model',
    fields: [{
        name: 'common',
        type: 'string'
    }, {
        name: 'botanical',
        type: 'string'
    }, {
        name: 'light'
    }, ]
});

// Create the Data Store.
var store = Ext.create('Ext.data.Store', {
    // Destroy the store if the grid is destroyed.
    autoDestroy: true,
    model: 'Plant',
    proxy: {
        type: 'ajax',
        url: 'plants.json',
        reader: {
            type: 'json',
            root: 'records'
        }
    },
    sorters: [{
        property: 'common',
        direction: 'ASC'
    }]
});

Вот мои данные:

{
    "records": [
        {
            "common":    "Bloodroot",
            "botanical": "Sanguinaria canadensis",
            "light":     "Mostly Shady"
        }, {
            "common":    "test",
            "botanical": "I do not know",
            "light":     "Mostly Shady"
        }
    ]
}

Считыватель XML прекрасно работает, но мы хотим использовать JSON.

Заранее спасибо

1 Ответ

1 голос
/ 11 ноября 2011

Взгляните на эту тему ! Вам нужно проверить ваш url путь к plant.json , путь начинается с 'index.html' или другой подобной начальной точки, а не с .js файл, где находится магазин. Я проверил ваш код, и он отлично работает, также используйте autoLoad: true в вашем Ext.data.Store, я не вижу ваш код сетки, так что ... Ура!

...