only-last-promise - Resolve or reject only last Promise

栏目: IT技术 · 发布时间: 5年前

内容简介:Resolve or reject only last Promise.Useful if you want to "abort" already running async operations started with debounced input event.When calling the wrapper function multiple times, only the last returned

only-last-promise

Resolve or reject only last Promise.

Useful if you want to "abort" already running async operations started with debounced input event.

Install

npm install only-last-promise --save

Usage

When calling the wrapper function multiple times, only the last returned Promise will resolve or reject and all other Promise s will be aborted with DiscardSignal error.

In the following example, fetch requests for /buddy and /allie will be discarded (they will return undefined ), and only /becky will be resolved with Response .

import onlyLastPromise, { DiscardSignal } from 'only-last-promise';

const wrapper = onlyLastPromise();

const wrappedFetch = async (url) => {
	try {
		return await wrapper(fetch(url));
	} catch (error) {
		if (!(error instanceof DiscardSignal)) {
			throw error;
		}
	}
};

(async () => {
	await Promise.all([
		wrappedFetch('/buddy'),
		wrappedFetch('/allie'),
		wrappedFetch('/becky')
	]);
	// => [undefined, undefined, Response]
})();

API

onlyLastPromise()

Returns: Function

Factory function which returns wrapper function.

wrapper(promise)

Type: Function

promise

Type: Promise

Promise to handle.

Browser support

Tested in IE9+ and all modern browsers, assuming Promise is available.

Test

For automated tests, run npm run test:automated (append :watch for watcher support).

License

MIT © Ivan Nikolić


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

JavaScript语言精粹

JavaScript语言精粹

道格拉斯•克罗克福德 (Douglas Crockford) / 赵泽欣、鄢学鹍 / 电子工业出版社 / 2012-9-1 / 49.00元

JavaScript 曾是“世界上最被误解的语言”,因为它担负太多的特性,包括糟糕的交互和失败的设计,但随着Ajax 的到来,JavaScript“从最受误解的编程语言演变为最流行的语言”,这除了幸运之外,也证明了它其实是一门优秀的语言。Douglas Crockford 在本书中剥开了JavaScript 沾污的外衣,抽离出一个具有更好可靠性、可读性和可维护性的JavaScript 子集,让你看......一起来看看 《JavaScript语言精粹》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具