【发布时间】:2016-12-07 21:05:41
【问题描述】:
我正在使用 node.js 在 javascript 中开发 API
我想要做的是调用一个函数,该函数触发一系列承诺,并在回调时返回一个包含一个产品信息的数组。
我想要做的是根据需要多次运行此函数,以形成 JSON 格式的产品列表。
但是这个产品列表需要在发回给用户之前创建,这是我苦苦挣扎的地方。
这是我的功能:
exports.findProduct = (ingredient, store, callback) => {
products.getProductData(ingredient, store)
.then( data => products.getProducts(data))
.then( productList => products.filterProductData(productList))
.then( selectedProduct => callback(null,selectedProduct))//get individual products and add to list
.catch( err => callback(err))
}
我这样称呼它
products.findProduct(ingredient, 'Waitrose', (err, data) => {
if (err) {
//res.send(status.badRequest, {error: err.message})
} else {
res.send(data)
res.end()
}
})
res.send(data) 将回调中的数据发送回服务器,但如果我想再次运行此函数并更新数组,然后才将数组发送到服务器,该怎么办?
非常感谢任何提示帮助。
【问题讨论】:
标签: javascript node.js asynchronous callback