网站搜索
我正在使用 node.js 的 async 包,特别是 forEachSeries,根据从数组中提取的参数进行一系列的 http 请求。在每个请求的回调中,我有一些 if/else 语句来应对不同类型的响应。
// This is the callback of a GET request inside of a forEachSeries function(error, response) { if (response.results) { // Do s 阅读更多 →
按照典型的 REST 标准,我将资源拆分成独立的端点和调用。这里涉及的主要两个对象是 List 和 Item(当然,一个列表包含一系列条目,以及一些与之关联的其他数据)。
所以如果用户想要检索他的列表,他可能会向 api/Lists 发起一个 Get 请求
然后用户可能想获取那些列表中的某些项目,并进行一次 GET 请求到 api/ListItems/4,其中 4 是从之前调用中获取的 List.listId 中找到的。
这一切都很好:$.ajax 的 opti
阅读更多 →
我需要递归遍历一棵树,以便对特定节点执行异步操作。我如何控制流程,以便在操作完成时能访问这些节点?
这里有一个示例情况:
data = { name: "deven", children: [ { name: "andrew" }, { name: "donovan" }, { name: "james", children: [ { name: "donatello" }, { name: "dan" } ] }, 阅读更多 →
我正在努力理解 Node.js 和一些异步操作。在下面的代码中,我获取了一些 RSS 订阅源,并在之前没有存储过文章的情况下存储它们。代码可以正常工作并存储新文章。然而,我不确定如何修改它,以便我知道所有文章解析完成的时间。例如,每个 async.eachLimit 的回调在达到限制时会被调用(比如每 10 篇文章或 5 个订阅源之后)。那么我怎么知道它们什么时候完成呢?
var FeedParser = require('feedparser'); var request = require('request'); var mysql = re 阅读更多 →
我有一个关于如何在 while 循环中执行异步任务直到满足某个条件的问题。这更多是一个理论性问题,但我可以理解在某些情况下这可能会成为一个问题。
我将尝试通过一个例子来演示这个问题(我这里使用的是 JavaScript,但你可以使用任何语言):
我可能有一个设备,我想在该设备达到特定状态之前保留我的应用程序。如果我可以获取设备状态的方法是同步的,代码可能如下所示:
// Hold until the desired state is reached var state = false; while (!state) { state = device.getStateSync(); } // [...] cont 阅读更多 →
我想定义一些从异步资源返回的常量。有什么办法可以在 Webpack 中做到这一点吗?
/* webpack.config.js */ module.exports = { ..., plugins: [ new webpack.DefinePlugin({ someVar: /* RETURN VARIABLE FROM ASYNC FUNCTION */ }) ] }一个好的方法是从 webpack 配置返回一个 Promise。
阅读更多 →
我一直在使用 async.waterfall 和 nodejs。它运行得非常好,但现在我对流程有一个问题。
我想在 async.waterfall 流程中使用一个简单的 if 条件。
async.waterfall([ callOne, callTwo, if(condition > 0 ) { callTest1, callTest2, }else{ ca 阅读更多 →
我正在尝试将回调函数转换为 async/await。代码使用主窗口框架向 iframe 发送 postMessage。当 iframe 发送消息回来的时候,它会调用回调函数。有没有办法将 $ (window).on(...) 模式转换为 Promise?
可运行代码的最小版本:
调用函数:
window.bridge.post(cb);桥对象:
class Bridge { constructor(win, root) { this.win 阅读更多 →
对于一个社交媒体应用,我有一个通过其 ID 引用的 feed 对象集合,使用 AngularFire 2。一旦从存储实际 feed 对象的数据库中获取到每个 ID 的相关数据,我希望用这些信息更新 feedCards Observable 对象,以便我可以异步地在 HTML 中显示 feed 对象的集合。这是一系列相当混乱的操作,所以让我为你总结一下。
逐步方法
我以为自己对 async await 有相当不错的理解,直到我尝试了这个:
const promise1 = new Promise((resolve, reject) => { setTimeout(() => resolve('what'), 10000); }); const promise2 = new Promise((resolve, reject) => { setTimeout(() => resolve('?'), 15000); }); async function asyncTest() { console.time(); const p1 = await promi
阅读更多 →