TS販売認知時間の計算

1861 ワード

個人事業を行う場合、店舗営業時に営業中であることを示す
機能を構築します.
使用するライブラリはJSクラスネーミングライブラリの瞬間です.

npm install moment


つながる
まず、00:00にデータベースから時間を取得するため、フォーマットを決定する必要があります.
const format ='HH:mm'
次の瞬間と現在の時間を変数に入れる
const now = moment();
const nowTime = moment(now,format);
これにより、nowTimeには現在の時間が00:00形式で含まれます.
では今から営業時間もこのようにしましょう.
営業時間値データベース
「00:00-00:00」には、このような文字列値が入力されていると仮定します.
//DB에서가져온값 = 09:00-18:00 이라고 가정할 때 
const beforeTime = moment(DB에서가져온값.substring(0,5),format); //앞 5자리(09:00)
const afterTime = moment(DB에서가져온값.substring(6,11),format); // - 제외한 뒤 5자리(18:00)
今準備ができています.
beforeTimeまたはafterTimeから値を取得していない場合は、エラーが発生する可能性があります.
しかし、データのない友人が3つの演算子を使うことが多い.
事前に遮断することもできます.
//DB에서 가져온 값 이름이 time 이라고 가정할 때.

const beforeTime = moment(time?time.substring(0,5):null,format);
とりあえず今JSXコーナー

JSX

{
   nowTime.isBetween(beforeTime,afterTime)
   ?
      <span>영업중</span>
   :
      <span>영업중아님</span>
}
現在の時刻.isBetween(A,B)
現在の時間値がA、Bの間にある場合、trueまたはfalseが返されます.
もちろん、時間だけでなく日付を指定することもできます.
の最後の部分