dynamic-import-no-cache
v1.0.3
Published
dynamic import with no caching
Downloads
4
Readme
dynamic-import-no-cache
according to ECMAScript, the contents of dynamic imports are cached by default.
Any subsequent call to [
import()
] given the argumentsreferencingScriptOrModule
andspecifier
, must return [...] a module which has already been evaluated
which means if you are using a dynamic import as part of your build process (eg. using chokidar to execute a function when a file is changed/added/deleted), then await import("/path/to/resource.js")
will not fetch the updated version, rather the (cached) version that was fetched the first time that call was made.
dinc
solves this by adding a cache busting timestamp param to the request, forcing node to fetch the fresh contents.
import dinc from "dynamic-import-no-cache";
const someResource = await dinc("/path/to/resource.js");
alternatively, if you don't want to install yet another node package, you can just do:
const someResource = await import(`/path/to/resource.js?${Date.now()}`);