保存和刷新的原理是一样的!这里以刷新为例
自己接管 onCustomRefresh 调用刷新 数据 方法, 可以是ajax请求后台,也可以是Baas.sendRequest
如果是异步请求async: true,
那么,默认情况下,data组件的 onAfterRefresh、onRefreshError事件或者refreshData 方法的 onSuccess、onError回调 都没办法触发的!
解决方法:
自己接管doRefreshAfter 事件
Model.prototype.masterDataCustomRefresh = function(event){
var data = event.source;
//手动进行异步刷新时,执行成功后调用doRefreshAfter。
$.ajax({
type: "GET",
url: require.toUrl(url),
dataType: 'json',
async: true,
success: function(result){
data.doRefreshAfter(result, event.options)
}
});
};
就能触发data组件的 onAfterRefresh、onRefreshError事件或者refreshData 方法的 onSuccess、onError回调 并且将参数传递进去!
关于data组件的详细介绍还可以参考:http://docs.wex5.com/comps-data/
评一波