Tip: "Jiggle" Webpack when it can't resolve a new import
May 12, 2019
Sometimes Webpack can get confused when you try and import a new module, failing (even though it should be able to resolve the module) with an error like:
Module not found: Can't resolve 'MyNewModule' in '/Users/jrosse/prj/myproject/src'
Specifically, I’m able to reproduce this by:
- writing the new import statement before the new module actually exists
- saving
- creating the new module
- re-saving the first module (the one doing the
import
ing of the new module)
This seems like a Webpack bug (and perhaps is tracked somewhere?), but here’s the trick that Matt Petrie taught me:
Just “jiggle” Webpack by eg changing the order of two of your import
statements. This should get Webpack to recognize that the new module exists and build successfully :tada:
Strangely, if you then “un-jiggle” (eg restore the original import
order), Webpack will fail again! Smells like a caching bug…?