Skip to content

Latest commit

 

History

History
87 lines (51 loc) · 1.9 KB

readme.md

File metadata and controls

87 lines (51 loc) · 1.9 KB

clear-module Build Status

Clear a module from the cache

Useful for testing purposes when you need to freshly import a module.

Install

$ npm install clear-module

Usage

// foo.js
let i = 0;
module.exports = () => ++i;
const clearModule = require('clear-module');

require('./foo')();
//=> 1

require('./foo')();
//=> 2

clearModule('./foo');

require('./foo')();
//=> 1

API

clearModule(moduleId, options)

moduleId

Type: string

What you would use with require().

options

options.filter

Optional filter function. function should return false to prevent the module from being removed from cache.

Use case: To prevent any module in node_modules from being uncached.

clearModule('./my-module', { filter: name => !name.match(/node_modules/) })

clearModule.all()

Clear all modules from the cache.

clearModule.match(regex)

Clear all matching modules from the cache.

regex

Type: RegExp

Regex to match against the module IDs.

clearModule.single(moduleId)

Clear a single module from the cache non-recursively. No parent or children modules will be affected.

This is mostly only useful if you use singletons, where you would want to clear a specific module without causing any side effects.

moduleId

Type: string

What you would use with require().

Related