promise 相关问题

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

如何在java中实现改变输出类型的promise

我正在尝试用java实现一个简单的promise系统。我这样做是为了特殊目的,所以请不要推荐任何库。 当我尝试实现 thenApply() 方法时遇到问题

回答 4 投票 0

Javascript 就像 Java 8 上的“Promise.all”(可能使用 lambda)

我想知道是否有类似于 Java 8 的 JavaScript 的“Promise.all”(目前在 Android 上)的东西。我试图在所有回调完成后执行第二个专业...

回答 2 投票 0

std::future 与临时 std::promise

我无法理解 Promise 如何与 future 合作。 我有一个返回 std::future 的函数,如下例所示: std::future calcSomeValue() { } 我的亲...

回答 2 投票 0

立即承诺链未按预期执行?

函数 foo(num) { 返回新的 Promise((resolve) => console.log(num)); } foo(1).then(() => { 富(3); }); 函数 foo 返回立即解析承诺。 “1”是p...

回答 1 投票 0

如何在 Dynamics CRM 中进行承诺等待,同时从 Xrm.WebApi.online.retrieveRecord 检索用户详细信息?

我正在开发一个 Dynamics 365 项目,我需要将登录用户的 Azure AD ID 与表单字段中的值进行比较,并根据比较结果显示图标。我的代码尝试

回答 1 投票 0

暂停视频时出错 - 未捕获(承诺中)DOMException:由于媒体已从文档中删除,所以 play() 请求被中断

我有一个下一个js应用程序,它有一个滑块,其中包含博客风格的帖子 - 每个帖子都包含一个设置为组件的视频。用户可以通过单击其中一个来加载新的滑块(帖子列表)...

回答 1 投票 0

在 TypeScript 中链接 Promise 时如何避免 .then 或重复等待?

我编写了一些代码来包装 Playwright 页面以简化一些操作。 在我的一项操作中,我想做一些类似打字和选项卡的操作(这甚至可以更好地模拟用户行为......

回答 1 投票 0

无法通过 Promise 正确更新元素的大小

我正在编写这个函数来切换幻灯片事件,并且我试图在其上实现 Promise,但它没有达到预期的效果,只有当我使用 Promise 时我才能获得最终宽度。虽然它...

回答 1 投票 0

如何用useState和promise解决这个问题?

Promice 正在重写钩子的值,我试图为我的帖子获得更多的值,但承诺继续用数据值替换钩子的值 const loadNewProducts = async() =>{ 同时(帖子。

回答 1 投票 0

考虑 Resolve.all 链中的最后一个承诺

我想从 Confluence 页面导出 HTML 内容。这些可以包含带有 src 属性的 标签,这些属性只是普通的超链接。因为我也想导出这些,所以我决定替换...

回答 1 投票 0

使用 Portal 和 Promise 创建动态 React 组件

使用简单的函数从我的 React 应用程序中的任何位置调用模态或抽屉。 我已经通过使用 root.render 完成了这项工作,但是 root.render 的问题是他们找不到我以前的任何内容

回答 1 投票 0

实现可中止API时如何优雅地管理AbortSignal事件监听器?

考虑这个简单的示例,可能是您编写了几次但现在可以中止的函数: /** * * @param {number} 延迟 * @param {AbortSignal} [abortSignal] * @returns {承诺 考虑这个简单的示例,可能是您编写了几次但现在可中止的函数: /** * * @param {number} delay * @param {AbortSignal} [abortSignal] * @returns {Promise<void>} */ export default function timeoutPromise(delay, abortSignal) { return new Promise((resolve, reject) => { if(abortSignal) { abortSignal.throwIfAborted(); } const timeout = setTimeout(() => { resolve(); }, delay); abortSignal.addEventListener("abort", () => { clearTimeout(timeout); reject(new Error("Aborted")); }); }); } 明显的问题是,如果超时正常成功,这不会清除 eventListener。可以做到,但是很难看: /** * * @param {number} delay * @param {AbortSignal} [abortSignal] * @returns {Promise<void>} */ export default function timeoutPromise(delay, abortSignal) { return new Promise((resolve, reject) => { if(abortSignal && abortSignal.aborted) { reject(new Error("timeoutPromise aborted")); } let timeout = null; function abortHandler() { clearTimeout(timeout); reject(new Error("timeoutPromise aborted")) } timeout = setTimeout(() => { if(abortSignal) { abortSignal.removeEventListener("abort", abortHandler); } resolve(); }, delay); if(abortSignal) { abortSignal.addEventListener("abort", abortHandler, {once: true}); } }); } 对于这么简单的事情来说,有很多代码。我这样做对吗还是有更好的方法? 您可以对 AbortSignal 上的方法调用使用可选链接: function delay(ms, signal) { return new Promise((resolve, reject) => { function done() { resolve(); signal?.removeEventListener("abort", stop); } function stop() { reject(this.reason); clearTimeout(handle); } signal?.throwIfAborted(); const handle = setTimeout(done, ms); signal?.addEventListener("abort", stop); }); }

回答 1 投票 0

Promise 和 setTimeout 优先级

我一直在与这个疑问作斗争,因为在事件循环中,作业队列比回调队列具有更高的优先级,即 Promise 比 setTimeout 具有更高的优先级,那么: 新的承诺(解决...

回答 2 投票 0

React 组件 - 在开始新的 Promise 之前,等待先前的 Promise 方法 (fetch) 到达其 finally {} 块(使用 AbortController 取消)

我有一个 React 组件,有 3 个按钮,代表用户可以做出的 3 个选择。 如果用户单击一个按钮,然后单击另一个按钮,我会使用 AbortController.signal 取消之前的 HTTP 请求...

回答 1 投票 0

在 JavaScript 中等待时,哪些函数会传递给 Promise?

考虑以下代码,它等待 Promise: 异步函数handleSubmit() { 尝试 { 等待提交表单(答案); } 捕获(错误){ 控制台.log('错误') } } 功能

回答 1 投票 0

使函数等待参数解析

是否已经有类似以下内容的东西。 /** * 前任。 * const ret = 等待 asyncify(Math.max)(arg1, arg2); */ 异步(函数){ 返回异步(...输入)=> { // ...

回答 1 投票 0

异步和多重等待 |调用堆栈暂停

我正在使用 Promise 和异步函数。我知道,在异步函数内部,如果有一个await out JS引擎将暂停正在进行的调用堆栈的函数调用并且......

回答 2 投票 0

在使用“then”附加解析函数之前,promise 执行器调用解析函数时到底调用了什么?

我发誓这种语言毫无意义。 Promise 执行器立即运行,在这种情况下,它调用解析函数,但尚未附加解析处理程序: // 流量站...

回答 1 投票 0

如何使用 JavaScript 等待元素存在?

我正在使用代理对象,在其中检测对象值更改,然后通过 AJAX 加载新内容,我使用 setInterval 函数等待 AJAX 请求中出现的元素存在...

回答 3 投票 0

JavaScript Promises :带有 bind(this) 的深层嵌套上下文

因为我使用的原型具有调用同一原型中其他函数的函数,所以我必须使用 this 来引用该方法 由此产生的问题: 但正因为如此,我必须

回答 3 投票 0

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