React slingshot - горячее промежуточное ПО Webpack, возвращающее 404 на hot-update.json при использовании под-маршрутов реагирующего маршрутизатора
Я использую стартовый проект реагирования на рогатку для моего приложения "Реакция / редукция" Горячая перезагрузка отлично работает, когда я использую такие маршруты, как /foo
но я обнаружил, что горячая перезагрузка не работает на таких маршрутах, как /foo/bar
, Я не вносил никаких изменений в готовый файл конфигурации веб-пакета, который можно найти здесь https://github.com/coryhouse/react-slingshot/blob/master/webpack.config.js
я получил 404 GET http://localhost:3004/orders/c344e97ed1fbc2923017.hot-update.json 404 (Not Found)
на компоненте CreateOrder, когда у меня есть следующая конфигурация маршрутов:
<Route path="/" component={App}>
<Route path="login" component={Login} />
<Route path="orders" component={OrderPanel} />
<Route path="orders/create" component={CreateOrder} />
<Route path="*" component={NotFoundPage} />
</Route>
Но когда я изменяю путь от заказов / создания до просто создания, он не возвращает 404.
Похоже, что промежуточное ПО для горячего обновления пытается получить hot-update.json из подпункта / orders?
2 ответа
Просто для полноты и всем, кто имеет эту проблему со старой версией рогатки. Это было также упомянуто в проблеме 75 и исправлено здесь заменой:
publicPath: '',
с
publicPath: '/',
в webpack.config.js
ОБНОВЛЕНИЕ: из комментария редукта publicPath должен начинаться и заканчиваться косой чертой. Заменить:
publicPath: 'dist/',
с
publicPath: '/dist/',
Конфигурация publicPath не была проблемой для меня. Если вы используете Redux, можете попробовать это.
По какой-то случайной причине redux-devtools
не позволяла перезагрузить меня Попробуйте удалить его из корневого компонента и redux compose
конфигурации.
Примечание. Используйте расширение браузера redux devtool с этой конфигурацией в конфигурации вашего магазина: window.devToolsExtension ? window.devToolsExtension() : f => f
Также необходимо прочитать: https://medium.com/@rajaraodv/webpacks-hmr-react-hot-loader-the-missing-manual-232336dc0d96
Или попробуйте горячую перезагрузку 3: пример: https://github.com/gaearon/redux-devtools/commit/64f58b7010a1b2a71ad16716eb37ac1031f93915