もちろん、Sencha Touch 2 と RSS フィードを使用して、お気に入りのニュース サイトの最新記事のリストを表示するシンプルなアプリを作成したいと考えています。
RSS フィードからデータを取得し、タイトル、作成者、日付、および内容を示すリストとして表示するにはどうすればよいですか?
最新のニュース記事のリストを取得できますが、著者、日付、スニペットなどではなく、各アイテムのタイトル/見出ししか表示できません。これが私のコードです:
1 モデル、1 ストア、1 ビュー、1 app.js:
//The store
Ext.define("NewsApp.store.EbStore", {
extend: "Ext.data.Store",
requires: ["Ext.data.proxy.JsonP", "Ext.dataview.List" ],
config: {
model: "NewsApp.model.NewsListModel",
autoLoad: true,
proxy: {
type: 'jsonp',
url: 'https://ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=5&q=http://feeds.feedburner.com/newsapp_pol',
reader: {
type: 'json',
rootProperty: 'responseData.feed.entries'
}
}
}
});
//The Model
Ext.define("NewsApp.model.NewsListModel", {
extend: "Ext.data.Model",
config: {
fields: [
{name: 'title', type: 'auto'},
{name: 'author', type: 'auto'},
]
}
});
//The view
Ext.define("NewsApp.view.NewsList", {
extend: "Ext.Container",
requires: "Ext.Toolbar",
alias: "widget.newslistview",
config: {
layout: {
type: 'fit'
},
items: [{
xtype: "toolbar",
title: "Danske Nyheder",
docked: "top",
items: [
{
xtype: 'spacer'
},
{
xtype: "button",
text: "Indstillinger",
ui: "action",
id: "settingsButton",
iconMask: true,
iconCls: 'settings'
},
{
xtype: "button",
text: "Refresh",
ui: "action",
id: "refreshButton",
iconMask: true,
iconCls: 'refresh'
}
]
},
{
xtype: "list",
store: "EbStore",
itemId:"EbList",
onItemDisclosure: true,
itemTpl: '{title}'
}
],
}
});
// And the app.js just for kicks
Ext.application({
name: "NewsApp",
models: ["NewsListModel"],
stores: ["EbStore"],
views: ["NewsList"],
launch: function () {
console.log("App starts");
var newsListView = {
xtype: "newslistview"
};
Ext.Viewport.add([newsListView]);
}
});
このコードで、RSS アイテムのタイトルをうまく表示できます。しかし、{title} をたとえば {author} に変更すると、ビューにリスト アイテムが作成されますが、コンテンツはまったくありません。私が読もうとしている RSS は通常の標準を使用していると思います: http://feeds.feedburner.com/newsapp_pol
では、タイトルだけでなく残りの RSS にアクセスするにはどうすればよいでしょうか?
プロキシコードでどのデータがキャプチャされているのか、どのように、またはどのような形式で正確にキャプチャされているのかを理解していないことが原因だと思います。
誰でも助けることができますか?:-)
Sencha Touch RSS リーダーのこれら 2 つの例を調べましたが、コードが高度すぎて理解できないことを除けば、どちらも優れてい
ます。
.com/AndreaCammarata/FeedBurner-RSS-リーダー