-1

我想要一个这样的例子。请给我一个详细的例子。

4

1 回答 1

1

如果要将结果存储在 Store 中,请首先像这样创建模型:

Ext.define('app.model.Example', {
        extend: 'Ext.data.Model',
        config: {
            fields: ['data'],
        }
});

接下来,创建您的商店:

Ext.define('app.store.Examples', {
    extend: 'Ext.data.Store',

    config: {
        model: 'app.model.Example',
        autoLoad: true,
        autoSync: true,
    },
});

在 Sencha Touch 2 Kitchensink Demo 中很容易找到 JSONP 请求的示例。在这里,我添加了一些代码以将结果添加到您的商店:

                Ext.data.JsonP.request({
                    url: 'http://free.worldweatheronline.com/feed/weather.ashx',
                    callbackKey: 'callback',
                    params: {
                        key: '23f6a0ab24185952101705',
                        q: '94301', // Palo Alto
                        format: 'json',
                        num_of_days: 5
                    },

                    callback: function(success, result) {
                        var store = Ext.getStore('Examples');
                        var weather = result.data.weather;

                        if (weather) {
                            store.add({data: weather});
                        }
                        else {
                            alert('There was an error retrieving the weather.');
                        }

                        panel.getParent().unmask();
                    }
                });

希望它有所帮助......让我知道是否有任何错误。

于 2012-04-10T13:41:27.743 回答