Я изучаю реакцию и разработал некоторую логику для рендеринга DIV, но я знаю, что это избыточно, и я не знаю, как именно его реорганизовать. Это код:
renderHeader() {
const {
course_module_index
} = this.state;
if(course_module_index === 0)
return (
<>
<h4 className="col-3 md-col-8 sm-col-4 color__primary1 bold">Conversation</h4>
<p className="col-8 offset-3 md-col-8 sm-col-4 body2 back__type">
Practice your English in the conversation classes available in the schedule below. you can enter a
class up to 10 min. after your start time, but we recommend that you book a time as
class size is limited.
</p>
<div className="header__opening-class">
<h6> Opening Classes Available!</h6>
<p> Mon/Wed/Fri from 9:00h to 9:30h | Tues/Thurs from 7:00 pm to 7:30 pm </p>
</div>
<hr ref={this.conversationBlockRef} className="margin-zero col-12 md-col-8 sm-col-4" />
</>
);
return (
<>
<h4 className="col-3 md-col-8 sm-col-4 color__primary1 bold">Conversation</h4>
<p className="col-8 offset-3 md-col-8 sm-col-4 body2 back__type">
Practice your English in the conversation classes available in the schedule below. you can enter a
class up to 10 min. after your start time, but we recommend that you book a time as
class size is limited.
</p>
<hr ref={this.conversationBlockRef} className="margin-zero col-12 md-col-8 sm-col-4" />
</>
);
Если единственная разница в том, что
header__opening-class
div кажется условным рендерингом, было бы достаточно, хотя трудно понять, является ли это единственным изменением.Я думаю, что этот вопрос лучше опубликовать n codereview.stackexchange.com, при этом вы всегда можете использовать тернарный оператор для такого сценария, например:
return your_condition ? <></> : <></>
Пожалуйста, четко опишите, какой раздел вы пытаетесь отобразить с условием и какой раздел вы пытаетесь отобразить по умолчанию? Не очень понятно в вашем вопросе.