在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ node中的stream和promise

node中的stream和promise

看別人的代碼看到一行代碼很奇怪

const downImage = async function (options, path) {
  await rp(options).pipe(fs.createWriteStream(path));
}

rp是一個(gè)npm模塊,rp(options)返回的是一個(gè)promise
pipe是node中可讀流的一個(gè)方法
也就是說(shuō)rp(options)應(yīng)該是一個(gè)可讀流,
rp(options).pipe(fs.createWriteStream(path))返回目標(biāo)流的引用也就是返回的是一個(gè)可寫(xiě)流
await 后面跟一個(gè)可寫(xiě)流,程序也能按預(yù)期正常執(zhí)行
難道是說(shuō)stream 和promise是一樣的,但查了資料也沒(méi)有提到兩者的關(guān)系

回答
編輯回答
舊言

nodejs的Promise沒(méi)有pipe方法,所以建議你看看rp的源代碼

2018年3月17日 06:25