Angular 2 + Ionic 2:如何更改控制器中的日期格式?

时间:2017-02-02 00:39:33

标签: angularjs sqlite angular ionic2 typescript2.0

我从sqlite数据库获取循环日期。格式类似于“Wed Feb 01 2017 21:54:24 GMT-0200”。但我想把它改成'dd / MM / yyyy'。

如何更改控制器中的格式?

我的代码示例:

this.issuedService.fetchAll().then(( res ) => {
    var data = [];
    for (let entry  of <Array<any>>res) {                
        console.log( JSON.stringify( entry  ) );
    }            
    //this.items = <Array<any>>res;
}, ( error ) => {
    console.log( "ERROR: ", error.message );
});

更新2017-02-02

所以,经过几个小时没有睡觉,我终于找到了解决方案。

我可以从NPM向我的Ionic v2项目添加MomentJs库。

$ npm install moment --save

结果代码:

import { Component } from '@angular/core';

import { NavController, NavParams } from 'ionic-angular';

import * as moment from 'moment';
import 'moment/locale/pt-br';

import { IssuedService } from '../../providers/issued-service';

@Component( {
    selector: 'page-home',
    templateUrl: 'home.html'
})

export class HomePage {
    items: any[] = [];
    issuedPage = IssuedPage;

    constructor(
        public navCtrl: NavController,
        public navParams: NavParams,
        public issuedService: IssuedService
    ) {
        this.initializeItems();
    }

    ionViewDidLoad() {
        console.log( 'ionViewDidLoad HomePage' );
    }

    initializeItems() {
        this.issuedService.fetchAll().then(( res ) => {
            for ( let entry of <Array<any>>res ) {
                entry.query_dt = moment( entry.picking_dt ).format( 'DD MMMM YYYY' );
                this.items.push(entry);
            }
            console.log( JSON.stringify( this.items  ) );
        }, ( error ) => {
            console.log( "ERROR: ", error.message );
        });
    }
}

Ionic 2 Doc / Adding third party libs

3 个答案:

答案 0 :(得分:2)

I did it with two lines:

import { DatePipe } from '@angular/common';

<ion-label>{{myDate | date: 'yyyy'}}</ion-label>

the first is just the import in ts file and the second you put in your html file.

答案 1 :(得分:1)

我项目的解决方案:

  

添加第三方库

     

您可以从NPM向V2项目添加大多数第三方库。   例如,让我们添加MomentJs。

 $ npm install moment --save
  

从这里开始,我们可以将它导入到我们想要使用它的类中。

import {Page} from 'ionic-angular';
import * as moment from 'moment';

export class MyClass {
  constructor(){
    moment("20111031", "YYYYMMDD").fromNow();
  }

}

Ionic Documentation Code

答案 2 :(得分:0)

试试这个

$scope.date = 'Wed Feb 01 2017 21:54:24 GMT-0200';
  var filterdatetime = $filter('date')( $scope.date,'dd/MM/yyyy' );
  alert(filterdatetime);