保存和刷新的原理是一样的!这里以刷新为例
自己接管 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/
评一波