promise 相关问题

Promise是延迟计算的一种策略,适用于多种并发风格:本地计算的线程和事件循环并发,以及同步和异步远程消息传递。 promise表示异步操作的最终结果。使用promises的主要方法是通过一种方法,将promise的最终值或失败原因的转换注册到新的promise。

函数中的嵌套 API 调用 - React-native

我有以下 JSON 响应。它是一个数组格式 [{ 创建:“2017-11-04T18:48:46.250Z” 性别:“男” 编号:1 图片:“https://rickandmortyapi.com/api/character/av...

回答 0 投票 0

我的函数在将文件上传到 firebase 时出现异步问题。谁能解释为什么?

目前我的应用程序有一个上传按钮,点击后会将文件上传到 firebase 并获取下载 url。并将其保存到状态变量中。然后是第二个按钮来提交整个表单......

回答 1 投票 0

为什么我的 Promise.reject 在被捕获时仍然抛出错误?

我正在尝试测试以下代码基本代码片段。目标是针对每个 r...

回答 1 投票 0

剧作家定位器().evaluateAll - 理解代码工具提示

我想了解page.locator("line-item").evaluateAll();的签名 对于这条线 const lineItems = await page.locator("line-item").evaluateAll(nodes =>{ ......

回答 0 投票 0

异步循环中的承诺

我正在学习 JavaScript,刚刚复习了 Promises。我试图编写一个看起来类似于此的循环: for (let i of someArray) { 如果(条件){ 等待返回承诺(i) } } 这...

回答 1 投票 0

如何在 Node.js 中通过错误处理有效地管理多个异步任务?

我正在从事一个涉及同时执行多个异步任务(API 调用、数据库查询等)的 Node.js 项目。我想确保我的代码高效且可维护,...

回答 1 投票 0

Javascript 嵌套异步不返回结果

出于某种原因,第二个嵌套的异步数据库函数永远不会得到返回的结果。第一个数据库调用从 MSSQL 获取一些计划程序,以便对 OracleDB 进行第二次数据库调用。我可以看到 Oracle qu...

回答 1 投票 0

确定未决和未解决的承诺

https://tc39.es/ecma262/#sec-promise-objects 如果承诺已解决或已“锁定”以匹配另一个承诺的状态,则该承诺已解决。尝试解决或拒绝已解决的

回答 0 投票 0

Node.js 承诺请求返回

我正在使用 promis 模块从请求模块返回我的 json 数据,但每次我运行它时,它都会给我这个。 承诺 { _45: 0, _81: 0, _65: null, _54: null } 我无法让它工作,任何......

回答 3 投票 0

如何将 navigator.sendBeacon 转换为 fetch 调用?

我看过很多文档/文章,建议使用 keepAlive 标志获取等同于 sendBeacon。 提取('/跟踪',{ 方法:'POST', 正文:getData(), 保活:真实, }); // 同样...

回答 0 投票 0

不能在for循环中写await

我知道这是一个重复的问题,但我仍在写我的查询 在循环内发出意外等待 const createChartPanel = 异步(数据)=> { 让面板= [] 让承诺 = [] 对于...

回答 5 投票 0

承诺同时运行而不是顺序运行

我在不同的 if 语句中运行不同的函数。如果在另一个已经运行之后,我想回到以前的 else。我试着写一个承诺,但写得太快了。 男...

回答 1 投票 0

不能在其他[重复]中使用一个函数的结果

我有两个功能 convertToBase64(file) 用于转换文件 addData(values) 用于发送转换后的文件。 但是第二个函数的结果总是未定义的。如何解决这个问题? 异步函数

回答 1 投票 0

我可以关闭异步函数以作为承诺传递吗

我有一个 somedataMap : Map> 我想填充。 我还有一个异步函数 async function getSomeData(someIdentifier:string): Promise 我有一个somedataMap : Map<string, Promise<SomeData>>,我想填充它。 我还有一个异步函数async function getSomeData(someIdentifier:string): Promise<SomeData>,我想将其用作该地图中的值 很明显,如果我做像somedataMap.set("someId", getSomeData("someId"))这样的事情,那么getSomeData中的代码就会被调用,我不想做,直到也许以后。将 getSomeData 函数包装/关闭为 Promise 以便我可以存储它或将其传递给其他函数的最佳方法是什么? 你可以使用任一个 somedataMap: Map<string, () => Promise<SomeData>> somedataMap.set("someId", () => getSomeData("someId")) 或 按原样使用它,稍后,当您想从 Promise 接收值时,执行以下操作: await somedataMap.get("someId") 我不想调用 getSomeData 函数,直到有人从地图中提取承诺 除非你覆盖地图的get方法(你不应该这样做),否则这是不可能的。相反,编写一个单独的包装函数来提取值: const somedataMap = new Map<string, Promise<SomeData>>(); function pull(id) { let promise = somedataMap.get(id); if (!promise) { promise = getSomeData(id); somedataMap.set(id, promise); // promise.catch(() => { somedataMap.delete(id); }); ??? } return promise; } 然后用作 await pull("someId") 异步函数 always 返回承诺。你不需要包装它。就叫它吧 const getSomeData = async (id) => { return 'some data'; }; const somedataMap = new Map(); getSomeData('x').then(data => { console.log(`data is "${data}"`); somedataMap.set("someId", data); console.log( somedataMap.values().next().value ); });

回答 3 投票 0

在承诺链中进行条件分支的最佳方式?

我需要运行一个有条件地调用辅助函数的函数。 如果使用 async/await 我可以这样做:- 结果A=异步函数A(id); 如果(resultsA.length>0){ 结果B=异步函数B(结果...

回答 1 投票 0

Javascript Promise 查询

我对 Javascript 很陌生,我正在考虑通过 OAuth2 调用 API。 我已将我的刷新令牌添加到 firebase 实时数据库并从那里调用。 我也通过axi调用刷新...

回答 0 投票 0

为什么可以在最后只使用一个 catch()?

我知道 promise 3 被拒绝是因为它解决了一个已经被拒绝的 promise(promise 2),但是 promise 3 如何拒绝 promise 4?,幕后发生了什么? 承诺。

回答 1 投票 0

如何判断一个承诺是否已解决? [重复]

假设一些代码确实 // 承诺.js 让 p = new Promise(() => { /* ... */ }) 导出默认 p 其中 Promise 是 ES6 Promise。假设其他一些代码只引用了 p。怎么可能...

回答 2 投票 0

拒绝如何沿着承诺链接传播到最近的 catch() 块?

Promise.resolve(6) // 承诺 1 .then(函数(数据){ console.log('然后 1:' + 数据); 返回 Promise.reject(new Error('ups - rejected')); }) // 承诺 2 .then(函数(数据){ 缺点...

回答 0 投票 0

从嵌套的承诺中返回数据

我创建了一个发布/订阅功能,它试图从我的 Firestore 数据库中获取一些数据,对其进行处理,然后通过电子邮件将其发送出去。看起来我正在从数据库调用中按顺序获取数据,但是

回答 0 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.