У меня есть домашний компонент и компонент проектов.Используя styled-component , я динамически устанавливаю свойство flexbox flex-base в компоненте проектов в зависимости от того, сколько проектов входит в реквизиты.Но стиль не будет применяться, пока я не обновлю компонент.Затем, если я вернусь домой, стили этого компонента будут нарушены, пока я не обновлюсь.
Кажется, что обновление одного компонента нарушает стили другого.
Я использую Laravel с Reactпредустановка внешнего интерфейса.
Код реакции:
<ProjectsWrapper projects={projects}>
Код компонента в стиле:
${breakpoints.tablet`
.card {
flex-basis: ${props => props.projects < 3 ? '50%' : '33%'};
}
`};
ОБНОВЛЕНО, ЧТОБЫ ПОКАЗАТЬ МАРШРУТИЗАТОР:
return (
<SiteWrapper>
<div className="container-fluid">
<Router>
<Switch>
<Route
render={({ location }) => (
(more code such as navigation...)
<div style={{ position: 'relative' }}>
{routes.map(({ path, Component }) => (
<Route key={path} exact path={path}>
{({ match }) => <Component data={dataObject} imagepath={imagePath} in={match != null} />}
</Route>
))}
</div>
</div>
)}
/>
</Switch>
</Router>
</div>
</SiteWrapper>
)
«Маршруты», которые он отображает, представляют собой объект, содержащий:
const routes = [
{ path: '/', name: 'Home', Component: HomePage },
{ path: '/about', name: 'About', Component: AboutPage },
{ path: '/projects', name: 'Projects', Component: ProjectsPage },
{ path: '/blog' , name: 'Blog', Component: BlogPage }
]