如果诺言没有回报价值

时间:2016-10-14 11:18:07

标签: javascript promise

我有一个返回函数的承诺,该函数确实有自己的错误处理,但有时因为某些原因而错过了(需要稍后再探讨)。

我想添加一个回退,如果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');
   });
}

1 个答案:

答案 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()