UNPKG

c-uview-plus

Version:

零云®uview-plus已兼容vue3,全面的组件和便捷的工具会让您信手拈来,如鱼得水

51 lines (45 loc) 1.25 kB
'use strict' function InterceptorManager() { this.handlers = [] } /** * Add a new interceptor to the stack * * @param {Function} fulfilled The function to handle `then` for a `Promise` * @param {Function} rejected The function to handle `reject` for a `Promise` * * @return {Number} An ID used to remove interceptor later */ InterceptorManager.prototype.use = function use(fulfilled, rejected) { this.handlers.push({ fulfilled, rejected }) return this.handlers.length - 1 } /** * Remove an interceptor from the stack * * @param {Number} id The ID that was returned by `use` */ InterceptorManager.prototype.eject = function eject(id) { if (this.handlers[id]) { this.handlers[id] = null } } /** * Iterate over all the registered interceptors * * This method is particularly useful for skipping over any * interceptors that may have become `null` calling `eject`. * * @param {Function} fn The function to call for each interceptor */ InterceptorManager.prototype.forEach = function forEach(fn) { this.handlers.forEach((h) => { if (h !== null) { fn(h) } }) } export default InterceptorManager