@wordpress/priority-queue Edit

This module allows you to run a queue of callback while on the browser’s idle time making sure the higher-priority work is performed first.

Installation Installation

Install the module

npm install @wordpress/priority-queue --save

This package assumes that your code will run in an ES2015+ environment. If you’re using an environment that has limited or no support for such language features and APIs, you should include the polyfill shipped in @wordpress/babel-preset-default in your code.

Top ↑


createQueue createQueue

Creates a context-aware queue that only executes
the last task of a given context.


import { createQueue } from '@wordpress/priority-queue';

const queue = createQueue();

// Context objects.
const ctx1 = {};
const ctx2 = {};

// For a given context in the queue, only the last callback is executed.
queue.add( ctx1, () => console.log( 'This will be printed first' ) );
queue.add( ctx2, () => console.log( "This won't be printed" ) );
queue.add( ctx2, () => console.log( 'This will be printed second' ) );


  • WPPriorityQueue: Queue object with add, flush and reset methods.

Code is Poetry.