Горячая перезагрузка Webpack ENOENT нет такого файла или каталога
Я работаю с Ubuntu на Windows. Я клонировал новый стартовый комплект "Реакция-редукс". Есть такая же проблема с реакцией-редукса-универсального-горячего примера и с моими собственными реализациями.
После npm install
Я запустил сервер с npm start
и страница работала отлично.
Как только я редактирую файл, я получаю следующую ошибку:
Unhandled rejection Error: Module build failed: Error: ENOENT: no such file or directory, open '/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/src/main.js'
at Error (native)
at Compiler.<anonymous> (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/build/webpack.config.js:69:15)
at Compiler.applyPlugins (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/tapable/lib/Tapable.js:26:37)
at Watching._done (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/webpack/lib/Compiler.js:78:17)
at Watching.<anonymous> (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/webpack/lib/Compiler.js:51:17)
at /mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/webpack/lib/Compiler.js:403:12
at Compiler.next (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/tapable/lib/Tapable.js:67:11)
at Compiler.<anonymous> (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/webpack/lib/CachePlugin.js:40:4)
at Compiler.applyPluginsAsync (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/tapable/lib/Tapable.js:71:13)
at Compiler.<anonymous> (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/webpack/lib/Compiler.js:400:9)
at Compilation.<anonymous> (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/webpack/lib/Compilation.js:577:13)
at Compilation.applyPluginsAsync (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/tapable/lib/Tapable.js:60:69)
at Compilation.<anonymous> (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/webpack/lib/Compilation.js:572:10)
at Compilation.applyPluginsAsync (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/tapable/lib/Tapable.js:60:69)
at Compilation.<anonymous> (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/webpack/lib/Compilation.js:567:9)
at Compilation.applyPluginsAsync (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/tapable/lib/Tapable.js:60:69)
at Compilation.<anonymous> (/mnt/c/Users/xxx/WebstormProjects/react-redux-starter-kit/node_modules/webpack/lib/Compilation.js:563:8)
Файл, который я отредактировал, является файлом, который не был найден (main.js), но файл существует. Я уверен, что есть другие люди с такой же проблемой. У кого-нибудь есть починка?
Я использую последнюю версию Windows Insider Build 14965 с последней версией Ubuntu, но проблема была и в предыдущих.
2 ответа
Нашел обходной путь. Вы должны добавить:
watchOptions: {
aggregateTimeout: 300,
poll: 1000
}
На ваш webpack-dev-сервер, потому что в настоящее время WSL не поддерживает прослушивание этих событий. Это работает также для Ruby и других, но с другим конфигом.
Смотрите здесь.
Я думаю, что Microsoft исправит это однажды.
Для меня, использующего Ionic 2, вышеупомянутая ошибка была вызвана проблемой чувствительности к регистру при импорте.
В моем примере я делал следующее:
import { MapRangeModel } from '../model/maprangeModel';
когда это должно было быть скорее:
import { MapRangeModel } from '../model/mapRangeModel';