Выбор ответа Middle Микрофронтенды и монорепо обновлено
shared singleton в Module Federation
Вопрос
Зачем в Module Federation для react и react-dom указывают shared: { react: { singleton: true } }?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Чтобы на странице была одна копия React для хуков. Если хост и remote подтянут свои копии React, хуки упадут с ошибкой о неправильном вызове, а контексты не будут видны между частями. singleton гарантирует одну загруженную версию, при несовпадении требований будет предупреждение.
Варианты ответа
- Чтобы React загружался с публичного CDN, а не из бандла
- Чтобы remote мог работать отдельно, без загрузки хоста
- Чтобы включить серверный рендеринг для remote-модулей
- Чтобы на странице была одна копия React для хуковправильный ответ
Разбор
Если хост и remote подтянут свои копии React, хуки упадут с ошибкой о неправильном вызове, а контексты не будут видны между частями. singleton гарантирует одну загруженную версию, при несовпадении требований будет предупреждение. С CDN, автономностью remote и SSR эта опция не связана.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.