Я занимаюсь разработкой приложения React, созданного с помощью create-Reaction-app v2.
Недавно я начал использовать библиотеку CSS-in-JS, а именно styled-компоненты. До этого мне было безразлично, перезагружается ли все приложение при каждом изменении или происходит горячая замена модуля. Но с CSS-in-JSS очень раздражает, когда все приложение перезагружается, когда я меняю css.
Я обнаружил, что, несмотря на то, что опция CRA2 для конфигурации веб-пакета hot
включена, горячая перезагрузка отсутствует.
Я должен сказать, что я никогда не настраивал HMR самостоятельно в веб-пакете, поэтому у меня нет четких знаний о том, как его следует использовать.
Я искал решение, но все это довольно расплывчато для меня. У меня возникли следующие вопросы:
В чем разница между реагирующим горячим загрузчиком и обычным HMR? Могу ли я иметь горячую замену модуля (по крайней мере для CSS) без реактивно-горячего загрузчика?
Можно ли как-то включить HMR без извлечения? Я видел решения для CRA1, но я использую CRA2. Также я использую craco для настройки конфигурации веб-пакета CRA2 по умолчанию, поэтому я буду рад найти решение с небольшим изменением конфигурации веб-пакета.
Почему HMR не включен по умолчанию в CRA2? На самом деле я всегда думал, что он включен, и по каким-то причинам просто требуется перезагрузка - мне было все равно, и у меня все было в порядке.