Webpack настроен для работы в два этапа:
вывод «ClientApp / build / public» для сборки клиента и активов (целевой веб),
вывод «ClientApp / build / server» для сборки SSR (целевой узел).
Сервер Dev запущен в режиме прокси: spa.UseProxyToSpaDevelopmentServer("https://localhost:8080/");
.
Горячая замена модуля работает, когда я установил в Startup.cs, ConfigureServices
services.AddSpaStaticFiles(configuration =>
{
configuration.RootPath = "ClientApp/build/";
});
В консоли браузера:
[HMR] Waiting for update signal from WDS...
...
[WDS] Hot Module Replacement enabled.
Но с текущими настройками я вижу папку 'server' видимой и могу получить доступ к https://localhost:44318/server/server.bundle.js
Когда я пытаюсь установить RootPath как ClientApp/build/public/
, приложение все еще работает и не имеет доступа к файлам сервера - желаемое поведение, но никаких ошибок или информации о состоянии из HMR в консоли браузера. Он молча отсутствует (но все еще существует встроенным в клиентский пакет).
Dev Server как отдельный процесс не останавливается постоянно - просто включите RootPath в проекте .net, чтобы включить или пропустить HMR. Что не так?
Конфигурация сервера Dev:
devServer: {
disableHostCheck: true,
https: true,
pfx: fs.readFileSync('./ssl/localhost.pfx'),
pfxPassphrase: 'some-password',
overlay: {
warnings: true,
errors: true
},
clientLogLevel: 'info'
}