欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

node?NPM庫增強(qiáng)版globby?Promise使用學(xué)習(xí)

 更新時(shí)間:2023年07月24日 14:11:35   作者:脈沖云_梁興臣  
這篇文章主要為大家介紹了node?NPM庫增強(qiáng)版globby?Promise使用學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

NPM庫

每天兩分鐘,了解一個(gè)流行NPM庫。

昨天,我們學(xué)習(xí)了一個(gè)新庫 glob,用于模式匹配目錄文件。今天,我們要了解的globby,是基于 glob,并進(jìn)一步得到了增強(qiáng)了功能。

globby 特性

相對(duì)于 glob,globby有以下增強(qiáng)功能

  • Promise 接口
  • 多模式匹配
  • 否定模式匹配
  • 擴(kuò)展目錄: dir → dir/**/*
  • 支持 .gitignore

應(yīng)用舉例

(async () => {
  const paths = await globby(['images','photos'],{
    expandDirectories: true
  });
  console.log(paths);
})();

gitignore:

const { gitignore } = require('globby');
(async () => {
  const isIgnored = await gitignore();
  console.log(isIgnored('some/file'));
})();

參考資料

glob: https://github.com/isaacs/nod...

globby: https://github.com/sindresorh...

q

我們了解了如何使用Promise管理異步任務(wù),但是ES2015標(biāo)準(zhǔn)的Promise對(duì)象實(shí)現(xiàn)的接口非常有限,只含 Promise.all() Promise.race() promise.then() promise.catch() ,這些接口在實(shí)際使用中是不夠用的,比如我們沒辦法直接判斷一個(gè)Promise對(duì)象是否已經(jīng)完成。

q是一個(gè)Promise實(shí)現(xiàn)庫,并且相對(duì)于ES2015標(biāo)準(zhǔn),q提供了很多實(shí)用的工具函數(shù)。下面我們就列舉一些非常有用的函數(shù):

判斷Promise狀態(tài)

  • promise.isFulfilled()
  • promise.isRejected()
  • promise.isPending()

promise.finally(callback)

Promise最終完成后調(diào)用,無論是否失敗,注意,ES2016 標(biāo)準(zhǔn)的Promise存在此函數(shù),但是Edge等一些瀏覽器并未實(shí)現(xiàn)此函數(shù)。

promise.timeout(ms,message)

異步處理超時(shí)設(shè)置

promise.delay(ms)

延時(shí)執(zhí)行

其他關(guān)于返回值的工具函數(shù)

比如 promise.get(propertyName) 的作用是獲取Promise返回對(duì)象的某個(gè)屬性,作用等同于:

promise.then(function (o) {
    return o[propertyName];
});

這種函數(shù)有很多,具體可以查看API文檔。

參考資料

https://github.com/kriskowal/q

https://github.com/kriskowal/...

以上就是NPM庫增強(qiáng)版globby Promise使用學(xué)習(xí)的詳細(xì)內(nèi)容,更多關(guān)于NPM庫globby Promise的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論