Import ES modules without cache.
- Import ES modules without cache
- All dependencies are also imported without cache
npm i import-without-cacheimport { clearRequireCache, init, isSupported } from 'import-without-cache'
if (!isSupported) {
throw new Error('import-without-cache is not supported in this environment.')
}
const deregister = init({
// Optional
skipNodeModules: false,
})
const mod = await import('some-module', { with: { cache: 'no' } })
clearRequireCache() // Optional: clear CommonJS cache if needed
// or
const mod2 = await import(`no-cache://some-module`)
expect(mod).not.toBe(mod2) // Different instances
deregister() // Optional: deregister the hooks when no longer needed- Support Node.js since v22.15.0, and doesn't support Deno.
- For Bun,
clearRequireCacheworks, butinitis not needed since ESM imports is the same as CJS requires. - Yarn PnP is not supported on Node.js < v24.
- For Bun,
- Only supports ESM modules by default. CommonJS cache can be cleared by
clearRequireCache. require(esm)is not supported. Please track this PR.
MIT License © 2025-PRESENT Kevin Deng