promise 相关问题

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

并行条件异步ajax调用

我对条件 AJAX 调用的优雅解决方案有类似的问题,其中参数通过 API 调用加载并在后续 AJAX 调用之前缓存,附加要求是...

回答 1 投票 0

如何在解决 Promise 时运行 qunit 断言

我正在为返回承诺的函数编写测试,并且无法在解决或拒绝承诺时运行断言。我无法在这个项目上使用 ES6,所以我使用 rsvp.js 库

回答 2 投票 0

‘then’函数返回的promise与‘then’函数内的回调返回的promise是否相同?

所以,我最近了解到了 Promise 的概念,并被告知出于链接目的,我们使用“then”,它实际上是在附加的 Promise 对象被实现时调用的。并且,做一些...

回答 3 投票 0

Promise 出现意外的 unhandledRejection 事件,而拒绝确实得到了处理

更新了,我现在已经尝试解释我所看到的行为,但是从可靠的来源获得关于 unhandledRejection 行为的答案仍然很棒。我也开始讨论了...

回答 4 投票 0

为什么我应该在 javascript 中使用 Promise 而不是 Callbacks?

我们可以通过回调和承诺实现相同的目标吗?如果可以的话,为什么要使用其中一个而不是另一个?

回答 3 投票 0

当从 then() 回调中返回 Promise 时,它是否会替换 then() 本身返回的 Promise?

我正在尝试了解承诺链的内部运作方式。我知道对 Promise 调用 then() 总是返回一个新的 Promise。 当从 then() 回调中返回 Promise 时,doe...

回答 1 投票 0

如何在 JavaScript 中访问 Promise 的值? [重复]

我正在使用公共 API 来获取数据。这是回报的承诺。 我想访问承诺的结果意味着其返回的数据或信息。 我的代码是: const getWeather=async ()=>{ ...

回答 1 投票 0

JavaScript 中顶级异步函数返回什么?

如果我调用一个异步函数,但它没有显式地从等待中返回任何内容,它会返回一个已解析的 Promise 吗?还是虚空?还有别的事吗? 例如像这样的 IIFE,或者这样但它是 c...

回答 1 投票 0

Safari 输入文件单击 javascript 在安全事件中不起作用

我有一个事件函数,它有一些异步任务等待结束。当我在所有 safari 后尝试打开 时,即使该事件是可信的,也不会打开 FileDialog

回答 1 投票 0

react-router中的useloaderdata()是否解析promise?

} loader={blogPostLoader} /> 博客页面 函数 BlogPostsPage() { const posts = useLoaderData() 返回 ( <> 我们的博客 <Route index element={<BlogPostsPage />} loader={blogPostLoader} /> 博客页面 function BlogPostsPage() { const posts = useLoaderData() return ( <> <h1>Our Blog Posts</h1> <Posts blogPosts={posts} /> </> ); } export function loader () { return getPosts() } getPosts() export async function getPosts() { const response = await fetch('https://jsonplaceholder.typicode.com/posts'); if (!response.ok) { throw { message: 'Failed to fetch posts.', status: 500 }; } return response.json(); } 我的主要疑问是,由于我们在加载器函数中返回一个承诺,因此useLoaderData()是否可以为我们解决它,因为我们不等待数据? 这是我的疑问。 useLoaderData钩子不会解析从加载函数返回的任何Promise,它只是返回从加载函数返回的(已解决)值。 每个路由可以定义一个“loader”函数,为路由提供数据 元素在渲染之前。 (强调我的) loader 在渲染路由(和 element 组件)之前调用,因此在渲染路由时,所有 Promise 都已解决。换句话说......所有“等待”都是在加载器函数和路由器中完成的,组件被安装/渲染,数据在组件中立即可用。 useLoaderData 不启动获取。它只是读取 React Router 内部管理的 fetch 结果,因此当它因路由之外的原因重新渲染时,您无需担心它会重新获取。 您可以在以下位置找到更多详细信息:https://reactrouter.com/en/main/hooks/use-loader-data 如果您想返回Promise,可以使用defer:https://reactrouter.com/en/main/guides/deferred 基本上,一旦您使用 Promise 返回 defer,您就可以使用 React.Suspense 作为后备(加载指示器),并在 Await (by react-router-dom) 解析后使用 Promise 来渲染组件。 这是指南的快照 import { Await, defer, useLoaderData, } from "react-router-dom"; import { getPackageLocation } from "./api/packages"; async function loader({ params }) { const packageLocationPromise = getPackageLocation( params.packageId ); return defer({ packageLocation: packageLocationPromise, }); } export default function PackageRoute() { const data = useLoaderData(); return ( <main> <h1>Let's locate your package</h1> <React.Suspense fallback={<p>Loading package location...</p>} > <Await resolve={data.packageLocation} errorElement={ <p>Error loading package location!</p> } > {(packageLocation) => ( <p> Your package is at {packageLocation.latitude}{" "} lat and {packageLocation.longitude} long. </p> )} </Await> </React.Suspense> </main> ); } 祝你好运!!!

回答 3 投票 0

将 api 数据渲染到车把

我正在尝试将 Promise.all 多重获取请求的结果传递到我的车把视图。该请求有效,因为它将结果返回到终端,但我不知道如何获取

回答 1 投票 0

R Promise 中的值本身可以是 Promise吗

我了解 R Promise 的基础知识。 Promise 包含三部分信息:(env, expr, [val])(val 仅在 Promise 被强制后才出现)。 我想检查一下是否...

回答 1 投票 0

Async/await 承诺提供替代方案。将await重写为Promise

我试图了解await在不同场景中是如何工作的,并遇到了一个问题。 新的承诺(异步(解决,拒绝)=> { 解决(); console.log(等待 Promise.resolve(7...

回答 1 投票 0

为什么异步函数中返回的 Promise.reject 没有被该函数内的 try-catch 块捕获?

我正在实现一个异步函数来从 API 获取和显示 JSON 数据。 为了正确处理错误,我使用了 try/catch 块。 但我收到了“未捕获(承诺)”&qu...

回答 1 投票 0

为什么异步函数中返回的 Promise.reject 没有被该函数内的 try-catch 块捕获?

我正在实现一个异步函数来从 API 获取和显示 JSON 数据。 为了正确处理错误,我使用了 try/catch 块。 但我收到了“未捕获(承诺)”&qu...

回答 1 投票 0

如何从Promise返回SOAP中的数据

我在 Node.js 中创建了一个 SOAP 服务器 const soap = require('soap'); const http = require('http'); 常量服务 = { ImpDispatcherService:{ ImpDispatcher:{ 执行测试:函数(...

回答 1 投票 0

如何进行异步 JavaScript getter 和 setter?

想想 Rails 如何允许您将一个属性定义为与另一个属性关联: 类客户 < ActiveRecord::Base has_many :orders end This does not set up a database column for orders.

回答 5 投票 0

循环内的异步请求

我有一个函数可以根据订单/请求的数据生成报告。内部函数有一个循环来查看要产生的展示总数,然后执行一系列操作。 该项目...

回答 1 投票 0

await 对这种表达没有影响 - 但显然有影响

我最近将 jsdocs 添加到我的项目中,从那时起我有 eslint 告诉我 'await 对这种表达式没有影响' const 结果 = 等待 someAsyncFunction(); //等待没有效果

回答 1 投票 0

Firebase 功能因 Promise 而停止

我有一个 firebase https 函数(使用 onRequest)。它获取 3800 个类别,并将它们批处理为 Promise。 让类别计数 = 0 while (categories.length) { 等待 Promise.all([ ...类别。

回答 1 投票 0

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