|
<ejs-grid ref='grid' :dataSource="data" :allowPaging='true' :pageSettings='pageSettings' :toolbar='toolbar' :actionFailure='actionFailure'
>
<e-columns>
. . .
</e-columns>
</ejs-grid>
export default Vue.extend({
data: () => {
return {
data: orderDetails,
. . .
};
},
methods:{
actionFailure: function (args: any) {
console.log(args.error);
}
}
}, |
|
class CustomAdaptor extends ODataAdaptor {
beforeSend(a,b,ajax) {
ajax.successHandler = function (data) {
if (this.onSuccess) {
// here you can check whether the data is valid or not
console.log(this.httpRequest.response);
this.onSuccess(data, this);
}
return data;
}
super.beforeSend.call(this, a,b,ajax)
}
}
Vue.use(GridPlugin);
new Vue({
el: '#app',
template: `
<div id="app">
<ejs-grid :dataSource="data" :actionFailure='actionFailure'>
<e-columns>
<e-column field='OrderID' headerText='Order ID' textAlign='Right' width=90></e-column>
. . .
</e-columns>
</ejs-grid>
</div>
`,
data() {
return {
data: new DataManager({
url: "http://some.com/invalidUrl",
adaptor: new CustomAdaptor()
})
};
},
methods: {
actionFailure: function(args) {
// here you can handle the server side failures
alert('Server exception: 404 Not found');
}
}
}); |