2017-02-02 13 views
1

我從sqlite數據庫中獲取循環中的日期。格式類似於「Wed Feb 01 2017 21:54:24 GMT-0200」。但我想將其更改爲'dd/MM/yyyy'。Angular 2 + Ionic 2:如何更改控制器中的日期格式?

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

示例我的代碼:

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); 
}); 

UPDATE 2017年2月2日

所以,不睡覺的幾個小時後,我終於找到了解決辦法。

我可以將MomentJs庫添加到我的NPM的Ionic v2項目中。

$ 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

+1

使用momentjs,效果最好! –

+0

嗨@AliBaig,謝謝你,那個時刻解決了我的問題。 –

+0

這是另一個很好的答案https://stackoverflow.com/a/41282812/6294371關於如何在控制器中格式化日期 –

回答

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

0

試試這個

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

+1

歐普正在尋找離子2 ..這看起來像棱角1 /離子1 –

+1

對不起我的錯誤。但角1元素不支持角2? @suraj – user6649141

+1

號..角2完全不同於角1 –

1

我有兩行做到了:

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

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

第一個只是在ts文件中導入,第二個在你的html文件中。

+1

工作就像一個魅力,更好的解決方案。 –