我有一个返回函数的承诺,该函数确实有自己的错误处理,但有时因为某些原因而错过了(需要稍后再探讨)。
我想添加一个回退,如果promise失败/ null,则返回另一个函数。
if (completedForm.isValid()) {
return formDataQueue.push(formJson, this.company).then(function () {
return self.trySync();
});
}
Return self.trySync():
需要一个错误处理程序来假设它不在那里,好像它被注释掉了。我的尝试似乎没有用。
if (completedForm.isValid()) {
return formDataQueue.push(formJson, this.company).then(function () {
//return self.trySync();
}, function(error) {
router.navigate('home');
});
}
答案 0 :(得分:1)
查看difference between .then(…).catch(…)
and .then(…, …)
。
要处理来自@RequestMapping("/roleAction_findForAjax")
public void findForAjax(HttpServletResponse resp) throws Exception{
resp.setContentType("application/json");
QueryResult<Role> role=superService.getScrollData(Role.class);
for(Role roles:role.getResultlist()){
System.out.println(roles.getId()+"\t"+roles.getName());
}
String json=JSONArray.toJSONString(role.getResultlist());
System.out.println(json+"----------------------------------------------------------------");
resp.getWriter().write(json);
}
的错误(并且仅来自那里),您要使用
trySync()