我正在寻找机会改变从服务器获取数据的机会,然后才能看到它。
我有一个回调函数,在代理(jsonp)加载数据后调用。问题是 未经编辑的数据在短时间内可见,直到我的回调编辑它并刷新商店 使用setData(myEditedData)。
我怎么能说商店:“嘿,请加载数据,但不要让它显而易见!”?
我按如下方式配置了我的商店:
Ext.define('TaskManager.store.TaskStore', { extend : 'Ext.data.Store',
config : { proxy : { type : 'jsonp', url : 'http://bla.bla', reader : { type : 'json', rootProperty : 'data' } } },
load : function(options, scope) {
// Load datas
},
callback : function(success, response) {
var editedData = [];
// Edit data from server, for example remove html entities, ...
this.setData(editedData); } });
有问题。代理将收到的数据立即设置到视图中。在我的回调函数完成之前,它可以看到很短的时间:-(我只想让我的editData在视图中可见。
我希望我的解释清楚。
提前致谢。
答案 0 :(得分:0)
在商店加载事件中,或者您用于获取数据的操作产生的任何事件(例如“添加”等),您尝试过e.stopPropagation()
或e.stopEvent()
,其中e是传递给侦听器的事件对象?