Есть ли простой способ визуализировать компонент React в приложении. js, но на основе результата из условия if? У меня есть приложение для часов, которое должно «звонить», когда значение будильника, которое я определяю, равно текущему времени. Я хочу, чтобы этот эффект «кольца» был тем, что другой компонент, например Ring. js, будет отображать, когда текущее время равно времени будильника, и он будет содержать текст из состояния a. Я могу просто отключить его, нажав кнопку.
Вот моя функция с условием, которая вызывается каждую секунду, чтобы проверить, есть ли значение в состоянии alarmHours или нет.
function checkTime(){
if(time.alarmHours && time.alarmMinutes){
if(time.currentHour === time.alarmHours && time.currentMinute === time.alarmMinutes &&
time.currentSecond === '00'){
//VALUES ARE EQUAL ,ALARM IS RINGING,RENDER COMPONENT
}
}
}
Моя первая идея состояла в том, чтобы создать пустую переменную, и если условие выполнено, просто вставьте компонент Ring. js в эту переменную.
let ring;
function checkTime(){
if(time.alarmHours && time.alarmMinutes){
if(time.currentHour === time.alarmHours && time.currentMinute === time.alarmMinutes &&
time.currentSecond === '00'){
ring = <Ring />
}
}
}
А затем просто отобразите эту переменную в Return () приложения. js, как это.
Return(
<div>
{ring}
</div>
)
Но это не работает, ничего не отображается.
Я пытался посмотреть официальную документацию React, там есть несколько примеров, но я действительно не понимаю, как реализовать этот подход в моем случае. Я не знаю, как визуализировать этот компонент, если это условие выполнено. Кто-нибудь может мне помочь? Я буду признателен за это. Спасибо.
Ссылка на codeandbox: https://codesandbox.io/s/rough-paper-xv0wi?file= / src / App. js