(function(){
$(document).bind('h5preinit', function(){
h5.settings.commonFailHandler = function(errorThrown){
console.log(errorThrown);
};
var errorAspect = {
interceptors: h5.core.interceptor.errorInterceptor
};
h5.settings.aspects = errorAspect;
});
})();
木口です。
解答ありがとうございます。
alert("Error!!"); → alert("fail!! "+ errObj.status); の順で実行されます。h5preinit.js $(document).bind('h5preinit', function(){
h5.settings.commonFailHandler = function(obj){
alert("Error!!");
console.log(obj);
};
var aspect = {
interceptors: [h5.core.interceptor.errorInterceptor, h5.core.interceptor.logInterceptor],
};
h5.settings.aspects = [aspect];
});$(function () {
function ShowTableDataLogic() {};
ShowTableDataLogic.prototype = {
__name: 'showTableDataLogic',
get: function(tableName) {
var dfd = this.deferred();
var retryCnt = 1;
dfd.notify();
this._getDef(tableName, retryCnt, dfd);
return dfd;
},
_getDef: function(tableName, retryCnt, dfd) {
this._get(tableName, retryCnt, dfd).done(function(data) {
dfd.resolve(data);
}).fail(function (errObj) {
alert("fail!! "+ errObj.status);
});
return dfd;
},
_get: function(tableName) {
var def = h5.ajax({
type: 'GET',
data: {tableName: tableName},
dataType : 'json',
url: 'show-table-dataa',
timeout: 3000,
});
return def.promise();
}
};
var onChangeController = {
__name: 'onChangeController',
__templates: 'rowsAreaTemp.ejs',
showTableDataLogic: new ShowTableDataLogic(),
'#tableSelector change': function (tableName){
var tableName = this.$find('#tableSelector option:selected').val();
if(tableName == -1) return null;
this.showTableDataLogic.get(tableName).done(this.own(function(data){
this.view.update(・・・・);
}));
}
};
h5.core.controller('#menueDiv', onChangeController);
});