Files
med-notes/.pnpm-store/v10/files/a6/c0b80ef84a4a61e481310a4008e0bb0a125945eb499f9942504994edf5c033b0e6e436edd2fe2a78e48d2ad7c1b08be57dd32ef8e87dcbbb7c20d738ce6bfc
2025-05-09 05:30:08 +02:00

55 lines
1.1 KiB
Plaintext

# import-fresh
> Import a module while bypassing the [cache](https://nodejs.org/api/modules.html#modules_caching)
Useful for testing purposes when you need to freshly import a module.
## ESM
For ESM, you can use this snippet:
```js
const importFresh = moduleName => import(`${moduleName}?${Date.now()}`);
const {default: foo} = await importFresh('foo');
```
**This snippet causes a memory leak, so only use it for short-lived tests.**
## Install
```sh
npm install import-fresh
```
## Usage
```js
// foo.js
let i = 0;
module.exports = () => ++i;
```
```js
const importFresh = require('import-fresh');
require('./foo')();
//=> 1
require('./foo')();
//=> 2
importFresh('./foo')();
//=> 1
importFresh('./foo')();
//=> 1
```
## Related
- [clear-module](https://github.com/sindresorhus/clear-module) - Clear a module from the import cache
- [import-from](https://github.com/sindresorhus/import-from) - Import a module from a given path
- [import-cwd](https://github.com/sindresorhus/import-cwd) - Import a module from the current working directory
- [import-lazy](https://github.com/sindresorhus/import-lazy) - Import modules lazily