DataViewが空白になる典型的な理由は、モデルまたはJSONが間違っているためです。私が知ることから、私のは正しいです...私はなぜ私のDataViewが空白であるか分からない。Sencha Touch:Ext.DataViewにストアデータが表示されない
コントローラ
rpc.controllers.AboutController = new Ext.Panel({
id: 'rpc-controllers-AboutController',
title: 'About',
iconCls: 'info',
layout: 'card',
scroll: 'vertical',
items: [rpc.views.About.index],
dockedItems: [{ xtype: 'toolbar',
title: 'RockPointe Church | Mobile'
}],
listeners: {
activate: function() {
if (rpc.stores.AboutStore.getCount() === 0) {
rpc.stores.AboutStore.load();
}
}
}
});
ビュー
rpc.views.About.index = new Ext.DataView({
id: 'rpc-views-about-index',
itemSelector: 'div.about-index',
tpl: '<tpl for="."><div class="about-index">{html}</div></tpl>',
store: rpc.stores.AboutStore,
fullscreen: true,
scroll: 'vertical'
});
ストア
rpc.stores.AboutStore = new Ext.data.Store({
id: 'rpc-stores-aboutstore',
model: 'rpc.models.AboutModel',
autoLoad: true,
proxy: {
type: 'scripttag',
url: WebService('About', 'Index'),
method: 'GET',
reader: {
type: 'json',
root: 'results'
},
afterRequest: function (request, success) {
if (success) {
console.log("success");
} else {
console.log("failed");
}
console.log(request);
}
}
});
rpc.stores.AboutStore.proxy.addListener('exception', function (proxy, response, operation) {
console.log(response.status);
console.log(response.responseText);
});
モデル
rpc.models.AboutModel = Ext.regModel('rpc.models.AboutModel', {
fields: ['html']
});
JSON
mycallback({ "結果":{ "HTML": "簡潔にするために除去...コンテンツ... "}、" 成功":真});
私はここで間違っていると誰が見ることができますか?
コンソール/ javascriptエラーはありません。そして、私が実際にWebServiceからJSONを取り除いていることを示すリソースがあります。あなたが要求をしてもらいたい場合、私はAboutController
に私のactivate
リスナー内console.log(rpc.stores.AboutStore.getCount());
を使用する場合は
、結果は常にある、と私は全くわからないんだけど、なぜここに
は、ステージングアプリです
http://rpcm.infinitas.ws/(このリンクはある時点で期限切れになります)
は、配列なしでそれを行う方法はありませんか?このプロジェクトには本当に必要ありません。 –
これはちょうどいい答えです。私はPOCOを 'List'としてシリアル化し、Senchaに送って、期待どおりに動作します。 –