我正在浏览Chain-ability of Promises,代码如下:
Promise.resolve(123)
.then((res) => {
console.log(res); // 123
return 456;
})
.then((res) => {
console.log(res); // 456
return Promise.resolve(123); // Notice that we are returning a
Promise
})
第一个回调不会返回承诺,但其余的回复。语句then
完成后可以调用.then((res) => { console.log(res);return 456;})
吗?
答案 0 :(得分:2)
如@jaromanda-x所述,
then方法返回一个允许方法链接的Promise。
你可以传递一个lambda然后如果它返回一个promise,一个 相当于Promise将暴露在随后的中 方法链。下面的代码片段模拟了异步代码 setTimout函数。
当一个值简单地从当时的lambda中返回时,它将有效地返回updatedOn
。
示例强>
response.path("responseData.orderId")
详细了解MDN