【发布时间】:2017-06-18 22:43:31
【问题描述】:
我正在从 sqlite 数据库中循环获取日期。格式类似于“2017 年 2 月 1 日星期三 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 将 MomentJs 库添加到我的 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 );
});
}
}
【问题讨论】:
-
使用momentjs,效果最好!
-
嗨@AliBaig,谢谢,momentjs 解决了我的问题。
-
这是另一个很好的答案stackoverflow.com/a/41282812/6294371 关于如何在控制器中格式化日期
-
嗨@ChenDachao,很好的答案。谢谢!
标签: angularjs sqlite angular ionic2 typescript2.0