【问题标题】:Ionic Datetime picker timezone issue离子日期时间选择器时区问题
【发布时间】:2018-08-27 06:50:09
【问题描述】:

我从一个 JSON 格式的 API 调用中得到这个日期:CreatedOn : 2018-08-27T05:11:29.000Z

当我打开表单时,我将日期时间选择器设置为该字段。

 <ion-datetime displayFormat="MMM DD YYYY h:mm A" pickerFormat="MMM DD YYYY h:mm A"
                 [(ngModel)]="Task.CreatedOn"></ion-datetime>

到达这里 Aug 27 2018 5:11 AM 这是错误的

我也用 angular 显示相同的日期。

<h6>{{Task.CreatedOn | date : 'MMMM d,yyyy At hh:mma' }}</h6>

到达这里August 27,2018 At 08:11AM 这是对的。

我认为在设置日期时间选择器时存在时区问题。 我该如何解决这个问题?

【问题讨论】:

    标签: ionic-framework ionic3 datetimepicker


    【解决方案1】:

    您可以使用 Angular formatToLocal 管道,该管道将使用 moment 进行内部转换。

    <ion-datetime 
      displayFormat="MMM DD YYYY h:mm A" 
      pickerFormat="MMM DD YYYY h:mm A" 
      [ngModel]="Task.CreatedOn | formatToLocal" 
      (ngModelChange)="Task.CreatedOn=$event">
    </ion-datetime>
    

    管道:

    import {Pipe, PipeTransform} from '@angular/core'
    import moment from 'moment';
    @Pipe({ name: 'formatToLocal'})
    export class FormatToLocal implements PipeTransform{
      transform(val) {
        if(val){
        return moment(val).format();  
        }
      } 
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-17
      • 1970-01-01
      • 1970-01-01
      • 2011-07-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多