Я условно представляю компоненты на домашней странице на основе того, вошел ли пользователь в систему или нет. Это мой код,
class Wrapper extends React.Component{
constructor(props){
super(props);
}
render(){
const comp = this.state.loggedIn ? (
<BrowserRouter>
<div className="wrapper">
<Header state={props.state}/>
<CoreLogged state={props.state}/>
</div>
</BrowserRouter> ):(
<BrowserRouter>
<div className="wrapper">
<Header state={props.state}/>
<CoreUnlogged state={props.state}/>
</div>
</BrowserRouter>
);
return (comp);
}
}
export default Wrapper
Поскольку компонент заголовка визуализируется независимо от того, как я могу реорганизовать этот код только для отображения только секции Core условно? Я новичок в React, вопрос.
Просто возьмите материал, который является общим, и вытащите его, затем используйте
{}
, чтобы выполнить условие. Вы также можете просто вернуться без переменной:Если компоненты используют одни и те же точные свойства, вы можете просто поместить этот компонент в переменную:
Обратите внимание, что в этом случае переменная должна начинаться с заглавной буквы или React попытается отобразить ее как встроенный компонент HTML.