Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何定义按需履行的承诺流?_Javascript_Promise - Fatal编程技术网

Javascript 如何定义按需履行的承诺流?

Javascript 如何定义按需履行的承诺流?,javascript,promise,Javascript,Promise,在我想“启动”序列之前,我是否有可能在不解析承诺链的情况下定义承诺链 我的用例: let a = [ promiseA1.then(()=>promiseB1), promiseA2.then(()=>promiseB2), ..., promiseAn.then(()=>promiseBn) ] Promise.all(a).then(onSuccess,onError) 将所有内

在我想“启动”序列之前,我是否有可能在不解析承诺链的情况下定义承诺链

我的用例:

let a = [
           promiseA1.then(()=>promiseB1),
           promiseA2.then(()=>promiseB2), 
           ..., 
           promiseAn.then(()=>promiseBn)
]

Promise.all(a).then(onSuccess,onError)

将所有内容放在一个函数中,并在需要启动该函数时调用该函数


承诺总是代表结果,而不是可启动的任务。

承诺是已经运行的东西。这不是你以后再开始的事情。但是,您可以定义一个返回承诺的函数,因此您需要调用它来开始工作。问题是数组是动态创建的。有一种可能性,当我按下第二条链条时,承诺可能已经得到解决/rejected@OvidiuMihota这不是问题<代码>然后也适用于已经履行或拒绝的承诺。