草庐IT

promise2

全部标签

javascript - 应该由 Promise 调用同步代码。然后创建一个新的 Promise

我已经实现了一些代码,其中异步代码后面跟着一些同步函数。例如:functionprocessSomeAsyncData(){asyncFuncCall().then(syncFunction).catch(error);}如果我理解正确那么也是一个Promise。那么,我是否也应该在同步代码中创建一个Promise?functionsyncFunction(){constp=newPromise(function(resolve,reject){//Dosomesyncstuff...resolve(data);}returnp;}如果没有必要,如果发生错误,你如何拒绝同步代码的pro

javascript - 应该由 Promise 调用同步代码。然后创建一个新的 Promise

我已经实现了一些代码,其中异步代码后面跟着一些同步函数。例如:functionprocessSomeAsyncData(){asyncFuncCall().then(syncFunction).catch(error);}如果我理解正确那么也是一个Promise。那么,我是否也应该在同步代码中创建一个Promise?functionsyncFunction(){constp=newPromise(function(resolve,reject){//Dosomesyncstuff...resolve(data);}returnp;}如果没有必要,如果发生错误,你如何拒绝同步代码的pro

javascript - 从 Promise 结果中导出 Node 模块

我正在尝试重写一个模块以返回与以前不同的值,但现在它使用异步调用来获取该值。(如果重要,请使用child_process)。我已经将它包装在一个Promise中,但这对我来说并不重要——它可以在原始的child_process回调中,但问题是我无法将Promise链接到应用程序中的任何地方,因为我需要它变得同步。这是我的模块:const{exec}=require("child_process");constplatformHome=process.env[process.platform==="win32"?"USERPROFILE":"HOME"];constgetExecPath

javascript - 从 Promise 结果中导出 Node 模块

我正在尝试重写一个模块以返回与以前不同的值,但现在它使用异步调用来获取该值。(如果重要,请使用child_process)。我已经将它包装在一个Promise中,但这对我来说并不重要——它可以在原始的child_process回调中,但问题是我无法将Promise链接到应用程序中的任何地方,因为我需要它变得同步。这是我的模块:const{exec}=require("child_process");constplatformHome=process.env[process.platform==="win32"?"USERPROFILE":"HOME"];constgetExecPath

javascript - then 和 finally in a promise 有什么区别?

我看到了Bluebird的finally的文档但我还是不太明白与then的区别。明确一点:我确切地知道为什么then在catch之后被调用。我希望在捕获后调用它。这就是意图。我的问题是:如果我希望代码始终被执行而不管promise状态如何,那么then与finally之间有什么区别?我构建了这个测试:varPromise=require("bluebird");functiontest1(){console.log("RESOLVE+THEN+CATCH+THEN");returnnewPromise((resolve,reject)=>resolve()).then(()=>cons

javascript - then 和 finally in a promise 有什么区别?

我看到了Bluebird的finally的文档但我还是不太明白与then的区别。明确一点:我确切地知道为什么then在catch之后被调用。我希望在捕获后调用它。这就是意图。我的问题是:如果我希望代码始终被执行而不管promise状态如何,那么then与finally之间有什么区别?我构建了这个测试:varPromise=require("bluebird");functiontest1(){console.log("RESOLVE+THEN+CATCH+THEN");returnnewPromise((resolve,reject)=>resolve()).then(()=>cons

javascript - 未捕获( promise 中)TypeError : Cannot read property 'setState' of undefined

这个问题在这里已经有了答案:Howtoaccessthecorrect`this`insideacallback(13个回答)关闭5年前。对我来说,这个错误在使用axios时很常见。我无法使用未定义的属性设置状态。尽管我得到了实际的回应。我很困惑。任何解决方案将不胜感激。json回复axios回复[{main:1,left:0,right:0,top:0,bottom:0,cid:6,'$created':'2016-10-21T11:08:08.853Z','$updated':'2016-10-22T07:02:46.662Z',stop:0}]code.jsimportReact

javascript - 未捕获( promise 中)TypeError : Cannot read property 'setState' of undefined

这个问题在这里已经有了答案:Howtoaccessthecorrect`this`insideacallback(13个回答)关闭5年前。对我来说,这个错误在使用axios时很常见。我无法使用未定义的属性设置状态。尽管我得到了实际的回应。我很困惑。任何解决方案将不胜感激。json回复axios回复[{main:1,left:0,right:0,top:0,bottom:0,cid:6,'$created':'2016-10-21T11:08:08.853Z','$updated':'2016-10-22T07:02:46.662Z',stop:0}]code.jsimportReact

javascript - Bluebird Promise 串行迭代,并解析到修改后的数组?

我有这个promise,如果在db中找不到新的Item文档,然后将其存储在以前创建的Collection文档中。..Collection文档是数组中的第一个字符串,数组中的任何后续索引都转换为一个或多个Item文档。Promise.each"Resolvestotheoriginalarrayunmodified"因此Promise.each中的最后一个return正在渲染对象,但随后的.then会生成原始数组..这是promise(为便于阅读而缩写):globalVar=true;collectionId="";varitemSeries=Promise.each(items,fun

javascript - Bluebird Promise 串行迭代,并解析到修改后的数组?

我有这个promise,如果在db中找不到新的Item文档,然后将其存储在以前创建的Collection文档中。..Collection文档是数组中的第一个字符串,数组中的任何后续索引都转换为一个或多个Item文档。Promise.each"Resolvestotheoriginalarrayunmodified"因此Promise.each中的最后一个return正在渲染对象,但随后的.then会生成原始数组..这是promise(为便于阅读而缩写):globalVar=true;collectionId="";varitemSeries=Promise.each(items,fun