当子级在异步函数上返回false时,从父函数退出

时间:2018-07-10 19:11:21

标签: javascript function asynchronous return

编辑:可以说不是重复的,因为在标记的重复项中;没有一个函数内部有子函数。因此,孩子的回报不会返回父母。

-

我在IIEF中有一个异步功能。像这样

$(function($){
  asyncAction((result)=>{
    if(result == someValidation()){
      return false;
    }
  })
  console.log("don't execute this");
});

我需要对父IIEF函数执行return false(它会停止全局程序流)

但是,有两个问题:

  1. 为子函数执行false返回,而不是为父函数执行(因为它是回调)
  2. 执行Console.log是因为asyncAction没有停止任何操作。

如何在返回假的fron异步子对象之后停止父函数以停止执行?

我尝试过的事情:

$(function($){
  let resultToParent = true;
  asyncAction((result)=>{
    if(data == someValidation()){
      resultToParent = false;
    }
  })
  if(resultToParent == false){
    return false;
  }
});

但这不起作用,因为子对象异步。

$(function($){
  try{
    asyncAction((result)=>{
      if(data == someValidation()){
        throw Error
      }
    })
  }
  catch(err){return false}
});

但这不起作用,因为try / catch仅适用于同步吗? (不确定吗?)

- 感谢您的帮助!

0 个答案:

没有答案