Задать вопрос
@ShamanR

Почему Preact не ререндерит компонент внутри StyledComponents обертки?

Попытался перевести существующую небольшую библиотеку на реакте в Preact.
Пока происходит рендеринг внутри обычных тегов то всё работает, выводится "Works", но при попытке обернуть в примитивный StyledComponent то он как отрендерил первоначально Do not work, так дальше оно и висит, в то время как первая строка поменялась на Works. Изменение условия происходит асинхронно.
С чем это может быть связано?

Причем если эту Styled обертку пересоздавать каждый раз в рендере - то всё работает как надо. А если объявить до класса компонента - то неправильное поведение.

const TestStyledWrapper = styled.div`
	color: red;
`;
{ condition === true ? <div>Works</div> : <div>Do not work</div> }
<TestStyledWrapper>
{ condition === true ? <div>Works</div> : <div>Do not work</div> }
</TestStyledWrapper>


Использую:
"preact": "10.0.0-rc.3",
"react": "16.9.0",
"styled-components": "4.3.2",
Алиасы проставил
resolve: {
alias: {
react: 'preact/compat',
'react-dom': 'preact/compat'
}
},
  • Вопрос задан
  • 130 просмотров
Подписаться 1 Средний 3 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы