Need help with decache?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

dwyl
130 Stars 16 Forks 77 Commits 8 Opened issues

Description

:shipit: Delete Cached node_modules useful when you need to "un-require" during testing for a fresh state.

Services available

!
?

Need anything else?

Contributors list

decache

Delete a module from node.js'

require.cache
so you can freshly
require
it again.

Build Status codecov.io Code Climate maintainability Dependencies Status devDependencies Status contributions welcome HitCount

In node.js when you

require()
a module, node stores a cached version of the module, so that all subsequent calls to
require()
do not have to reload the module from the filesystem.

decache
( Delete Cache ) lets you delete modules from node.js
require()
cache this is useful when testing your modules/projects.

Why?

When testing our modules we often need to re-require the module being tested. This makes it easy.

What?

An easy way to delete a cached module.

How? (usage)

install

Install the module from npm:

npm install decache --save-dev

Use it in your code:

// require the decache module:
const decache = require('decache');

// require a module that you wrote" let mymod = require('./mymodule.js');

// use your module the way you need to: console.log(mymod.count()); // 0 (the initial state for our counter is zero) console.log(mymod.incrementRunCount()); // 1

// delete the cached module: decache('./mymodule.js');

// mymod = require('./mymodule.js'); // fresh start console.log(mymod.count()); // 0 (back to initial state ... zero)

Modules other than

.js
, like for example,
.jsx
, are supported as well.

Note that native modules with the

.node
extension are ignored from decaching because they behave unexpectedly when decached.

If you have any questions or need more examples, please create a GitHub issue: https://github.com/dwyl/decache/issues

Thanks!

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.