Материал UI + SSR + несоответствие классов - PullRequest
0 голосов
/ 15 сентября 2018

Работая над проектом, мы решили переключиться на веб-пакет 4. Как только мы интегрировали оптимизацию для разделения кода, мы были удивлены, как улучшился размер пакета.

Все было хорошо, пока не прекратили производство. Мы сделали копию 1/1 из Material-ui docs. После запуска производственной сборки наше приложение было полностью уничтожено.

После нескольких часов исследований мы заметили, что рендеринг на стороне сервера со стилями прошел идеально, но когда появился рендеринг клиента - стилизация ушла.

Похоже, использование вложенных в withStyles компонентов разрушает наше приложение. Я хотел бы поделиться некоторым кодом, но на этом уровне приложения слишком много.

Кто-то тоже сталкивался с этой проблемой? Если да, то как ты решил это? Почему применение JssProvider и удаление стилей из тега server-style-id все разрушает? Я могу представить, стилисты теряют причину пропажи classNames, почему они исчезли? Есть ли статья о плохих / хороших привычках для переопределения стилей? Я потратил 2 дня, чтобы решить это, и все, что я мог понять, это была проблема не на производственном сервере, а на стороне клиента.

Мой стек - webpack 4, material-ui 3.0.3, babel-loader 8, реагирует 16.

1 Ответ

0 голосов
/ 12 октября 2018

Обновите ваш пакет материалов UI. v3.0.3 имел проблему , которая вызывала несовпадение имен классов при рендеринге более одного раза (как с SSR).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...