Sencha Touch 2.3(无法从sencha touch 2中的json文件加载数据)

时间:2014-10-20 15:52:54

标签: sencha-touch-2 store rss-reader google-feed-api

我试图在Json存储加载时向url添加参数,但我正在接受“无法加载数据”的错误。这是我商店的代码。

Ext.define('RssFeed.store.RssFeeds', {
    extend: 'Ext.data.Store',

    requires: [
        'RssFeed.model.RssFeed',
        'Ext.data.proxy.JsonP',
        'Ext.data.reader.Json'
    ],

    config: {
        model: 'RssFeed.model.RssFeed',
        storeId: 'RssFeeds',
        proxy: {
            type: 'jsonp',
            url: 'https://ajax.googleapis.com/ajax/services/search/news?v=1.0',
            reader: {
                type: 'json',
                rootProperty: 'responseData.results'
            }
        }
    },

    searchFeed: function(request) {
        var request="turkey";
        Ext.getStore('RssFeeds').load({
            params: {
                q:request
            }
        });
    }

});

1 个答案:

答案 0 :(得分:1)

您好,您的商店似乎是正确的,我在我的本地机器上进行了测试。

Ext.define('MyApp.store.RssFeeds', {
    extend: 'Ext.data.Store',

    requires: [
        'Ext.data.proxy.JsonP',
        'Ext.data.reader.Json'
    ],

    config: {
        //model: 'RssFeed.model.RssFeed',
        fields:['title'],
        storeId: 'RssFeeds',
        proxy: {
            type: 'jsonp',
            url: 'https://ajax.googleapis.com/ajax/services/search/news?v=1.0',
            reader: {
                type: 'json',
                rootProperty: 'responseData.results'
            }
        }
    },

    searchFeed: function(request) {
        request = request || '';
        Ext.getStore('RssFeeds').load({
            params: {
                q:request
            }
        });
    }
});

以下是我如何使用它..

var store = Ext.create('MyApp.store.RssFeeds'); store.searchFeed( '菲');