摘要:酷庫,每天兩分鐘,了解一個(gè)流行庫。昨天我們了解了增強(qiáng)版庫。庫實(shí)現(xiàn)了比標(biāo)準(zhǔn)更多的方法,今天我們繼續(xù)學(xué)習(xí)另一個(gè)功能強(qiáng)大的工具庫。首先,和庫一樣,也是一個(gè)增強(qiáng)版本的庫,可以直接后替換內(nèi)置。
NPM酷庫,每天兩分鐘,了解一個(gè)流行NPM庫。
昨天我們了解了增強(qiáng)版Promise庫:q。q庫實(shí)現(xiàn)了比ES2015標(biāo)準(zhǔn)更多的Promise方法,今天我們繼續(xù)學(xué)習(xí)另一個(gè)功能強(qiáng)大的Promise工具庫:bluebird。
bluebird首先,和q庫一樣,bluebird也是一個(gè)增強(qiáng)版本的Promise庫,可以直接require后替換Node.js內(nèi)置Promise。
const Promise = require("bluebird");
Promise也提供了其他非常有用的工具,比如前天文章中將callback樣式函數(shù)轉(zhuǎn)換為Promise樣式,可以直接使用bluebird實(shí)現(xiàn):
const readFile = Promise.promisify(fs.readFile);
也可以直接將整個(gè)Node.js模塊轉(zhuǎn)換為Promise樣式接口:
const fs = Promise.promisifyAll(require("fs")); // ... await fs.readFileAsync("myfile.js", "utf8");
此外經(jīng)常用到的bluebird工具有:
Promise.props
Promise.any
Promise.some
Promise.map
Promise.reduce
Promise.filter
Promise.each
Promise.mapSeries
Promise.race
參考資料https://github.com/petkaanton...
http://bluebirdjs.com/docs/ap...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/107037.html
摘要:酷庫,每天兩分鐘,了解一個(gè)流行庫。昨天我們了解到可以用庫將樣式庫轉(zhuǎn)化為樣式,同時(shí)庫也提供了強(qiáng)大在增強(qiáng)版的,如果我們需要轉(zhuǎn)化函數(shù),且僅需要使用標(biāo)準(zhǔn)的,那么使用有些大材小用。 NPM酷庫,每天兩分鐘,了解一個(gè)流行NPM庫。 所有Node.js標(biāo)準(zhǔn)庫和很多第三方庫提供的接口都是callback樣式的,在ES7標(biāo)準(zhǔn)時(shí)代,使用async/await配合Promise才是最佳實(shí)踐。 昨天我們了解到...
摘要:酷庫,每天兩分鐘,了解一個(gè)流行庫。庫是一個(gè)非常出色的異步控制庫,除了函數(shù)外,還提供了大量的其他工具函數(shù),在當(dāng)年沒有的時(shí)候,庫的作用尤為突出。 NPM酷庫,每天兩分鐘,了解一個(gè)流行NPM庫。 今天要了解的庫叫async,與ES7標(biāo)準(zhǔn)的async/await關(guān)鍵字不同,這里說的async只是NPM的一個(gè)庫,為了區(qū)別,下文中今天的主角叫async庫,async/await的關(guān)鍵字叫async...
摘要:酷庫,每天兩分鐘,了解一個(gè)流行庫。是一個(gè)實(shí)現(xiàn)庫,并且相對于標(biāo)準(zhǔn),提供了很多實(shí)用的工具函數(shù)。異步處理超時(shí)設(shè)置延時(shí)執(zhí)行其他關(guān)于返回值的工具函數(shù)比如的作用是獲取返回對象的某個(gè)屬性,作用等同于這種函數(shù)有很多,具體可以查看文檔。 NPM酷庫,每天兩分鐘,了解一個(gè)流行NPM庫。 昨天我們了解了如何使用Promise管理異步任務(wù),但是ES2015標(biāo)準(zhǔn)的Promise對象實(shí)現(xiàn)的接口非常有限,只包含 P...
摘要:是一個(gè)劃時(shí)代的庫,因?yàn)楫a(chǎn)生后,后續(xù)的標(biāo)準(zhǔn)的就是基于的,而機(jī)制讓人能夠以同步樣式的代碼處理異步任務(wù),徹底解決了回調(diào)問題。而的機(jī)制其實(shí)很簡單,它將異步任務(wù)抽象為三種狀態(tài)進(jìn)行中完成失敗。 NPM酷庫,每天兩分鐘,了解一個(gè)流行NPM庫。 JavaScript的優(yōu)勢就在于其基于異步事件模型,從而Node.js能夠擁有非常強(qiáng)大的性能表現(xiàn)。但是,JavaScript的callback方式做異步處理,...
摘要:上一節(jié)講述了的原理及實(shí)現(xiàn),這一節(jié)為大家?guī)韮蓚€(gè)基于封裝的庫,方便我們在項(xiàng)目實(shí)戰(zhàn)中能夠方便采用處理異步。的方法,也是生成一個(gè)成功的對象,但是確是將的參數(shù)傳入對象成功回調(diào)中作為成功回調(diào)參數(shù)。對象和的處理方式和調(diào)用方式相同。 上一節(jié)講述了promise的原理及實(shí)現(xiàn),這一節(jié)為大家?guī)韮蓚€(gè)基于promise封裝的庫,方便我們在項(xiàng)目實(shí)戰(zhàn)中能夠方便采用promise處理異步。 一、q庫 www.n...
閱讀 979·2021-11-17 09:33
閱讀 435·2019-08-30 11:16
閱讀 2498·2019-08-29 16:05
閱讀 3374·2019-08-29 15:28
閱讀 1422·2019-08-29 11:29
閱讀 1975·2019-08-26 13:51
閱讀 3415·2019-08-26 11:55
閱讀 1239·2019-08-26 11:31