React + HMR (Hot Module Reload)?...
Уже, вроде понятно, что для HMR нужен дев-сервер webpack-dev-server, через который проксируются запросы к .net, и всё вроде бы и работает (сигналинг по вебсокету проходит, hot-update.js рендерится, но hot-update.json, похоже, пуст) - в общем, непонятно, на чьей стороне проблема.
Раньше, до неткоре 3, было наоборот как я понимаю: в .net приксировались запросы к nodejs
С SSR или без?
Готового нет, могу накидать наброски после работы, если не найдешь
ага, спасибо! вторые сутки уж бьюсь... Основная (в общем-то, единственная) проблема — HMR...
для SSR кто что юзает кстати? (react.net не предлагать т.к. слишком скучно да и фронтам не особо нравится под голый v8 кодить)
Не очень понятно, что ты имеешь ввиду, если речь про реакт. SSR имеет ограничения независимо от того, чем рендерить
Тут немного измененный дефолтный шаблон (совсем дефолтный у меня никак не хотел заводиться) Только для девелопмента с hmr, с деплоем думаю сам разберешься https://github.com/devzerker/Net5ReactHmr https отключен, т.к. нужно для девсервера self-signed сертификат добавлять руками в хранилище, это неудобно, а сделать так, как в asp по нажатию одной кнопки у меня не хватило скилла Запускать devserver нужно отдельно через npm run dev Ещё ты можешь заметить такую вещь, что по сравнению с babel и голым js ts компилится и хотрелоадится довольно медленно, "решение" это отключать проверку типов для девелопмента, можешь найти в гугле как это делается
Спасибо большое, попробую!
Еще раз благодарю за участие. Из твоего примера почерпнул полезную идею (и реализацию) — проксирование запросов от дотнета к дев-веб-серверу вебпака (изначально пробовал решать наоброт — проксировал через nodejs веб-сервер). Твой подход, на мой взгляд, корректней ("чище") Основная же проблема была, если кому интересно, в следующем (дальше немного не про дотнет, прошу простить, — может, кому-то пригодится и сохранит пару суток времени): используется набор из TypeScript, к нему лоадер babel-loader с плагином react-hot-loader/babel, реактовский HМR react-hot-loader и вебпаковский дев-сервер (webpack serve) Все нужные для реализации HMR действия проходят как бы успешно (без видимых проблем): сигналинг о апдейтах по вебсокету, генерация чанков с изменениями, их пуш через сокет, реакция на эти пуши клиентом (браузером) и тд. Но, с..а, обновления (перерисовки) компонента на форме (в браузере) не происходит, — хоть ты тресни. Проблема была в том, что компонент ("на классах") наследовался от React.PureComponent. И именно в таком режиме HMR отрабатывает как бы по-полной, но ничего не перерисовывает (т.е. основную задачу не выполняет). Если же компонент унаследовать от React.Component, или компонент делать не на классах, а функциональным, то всё идеально работает. Ивану еще раз спасибо за участие.
Обсуждают сегодня