【问题标题】:convert ionic datetime to hour and min将离子日期时间转换为小时和分钟
【发布时间】:2021-04-09 04:01:57
【问题描述】:

我正在使用离子日期时间组件,如下所示

  <ion-item >
                    <ion-label>Time:</ion-label>
                    <ion-datetime displayFormat="h:mm A" pickerFormat="h mm A" [(ngModel)]="localEstDelTime"></ion-datetime>
              </ion-item>

在 ionViewDidLoad 上,我将 localEstDelTime 的值设置为:

var d = new Date()
 var dt = d.setTime(d.getTime() + (5.5 + 2)*60*60*1000)
this.localEstDelTime = dt.toISOString()

基本上添加了 5.5 小时以使其适用于 GMT + 5.5 的印度时区,对于此用例,应该显示时间加上当前时间的 2 小时。

现在,要求假设最终用户通过 UI 又增加了一个小时,然后我想在本地时区获得那个小时和时间。我的代码无法正常工作,如下所示:

 var storeEstDelTime =  Date.parse(this.localEstDelTime)
 var date = new Date(storeEstDelTime)
 var hours = date.getHours() + 5.5
 var minutes = date.getMinutes()

        var ampm = Number(hours) >= 12 ? 'PM' : 'AM';
        hours = hours % 12;
        hours = hours ? hours : 12; // the hour ’0′ should be ’12′
        var minutesStr = Number(minutes) < 10 ? '0'+ minutes : minutes;

        estDeliveryTime = hours + ':' + minutesStr + ' ' + ampm;

所以我需要 estDeliveryTime 只是 hh:mm AM/PM 格式。我上面的代码需要修复。

【问题讨论】:

    标签: javascript datetime ionic-framework ionic3


    【解决方案1】:

    始终将您的日期转换为UTC time set 总是一个好主意,因为这是一个通用标准。就像输入日期一样,只需像这样转换日期:

    var now = new Date(),
        utcDate = new Date(
            now.getUTCFullYear(),
            now.getUTCMonth(),
            now.getUTCDate(),
            now.getUTCHours(),
            now.getUTCMinutes(), 
            now.getUTCSeconds()
        );
    

    现在,当您从用户那里获取交货时间(额外的一小时)时,对该日期执行相同的操作,并将该小时添加到 utcDate,最后将 UTC 日期转换为 GMT 日期IST 为 5.5。

    希望这会有所帮助:)

    【讨论】:

      【解决方案2】:
      1. npm i --save date-fns

      2. 从 .ts 文件中的“date-fns”导入 {format}

      3. 让 example_time = "2019-11-30T14:42:30.951+08:00";

      4. 格式(新日期(example_time), "HH:mm");

      5. console.log(example_time) => '14:42'

      【讨论】:

        猜你喜欢
        • 2021-12-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-28
        • 2021-12-27
        • 2021-05-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多