在离子2项目中使用moment.js包

问题描述 投票:13回答:2

我想在Moment.js包用在我的项目离子2日期,我不知道该怎么做,这是链接moment js link

我有日期时间变量,我想这是从我区的面积。应该怎么做呢?因为它是在打字稿JavaScript和离子2使用

我试图做到这一点,但它不是作品

     constructor(public navCtrl: NavController,private platform:Platform) {

   mydate=new Date();
   mydate=moment.moment().format('MMMM Do YYYY, h:mm:ss a');

  }

当我尝试使用此

let data = moment().format('YYYYMMDD');
let time = moment().format('HHmmss');
console.log('today is: ', data + ' and time: ', time);

我得到这个错误qazxsw POI

angular ionic2
2个回答
48
投票

检查此enter image description here的打字稿。

1 - 通过NPM安装:

link

2 - 导入您的打字稿文件:

npm install moment -S

3 - 使用您的打字稿文件:

import moment from 'moment';

我希望能一直给你帮助。 :)

编辑:仍然能正常使用离子v3.9.2(2018年3月8日)


10
投票

感谢@ mosca90你让我90%的方式!

我用了你的信息来创建一个自定义管道,从而彻底解决了我的问题。这里是管的来源:

let data = moment().format('YYYYMMDD');
let time = moment().format('HHmmss');
console.log('today is: ', data + ' and time: ', time);

所以,现在我可以这样做:

import { Pipe, PipeTransform } from '@angular/core';
import moment from 'moment';

/**
 * Generated class for the MomentjsPipe pipe.
 *
 * See https://angular.io/docs/ts/latest/guide/pipes.html for more info on
 * Angular Pipes.
 */
@Pipe({
  name: 'momentjs',
})
export class MomentjsPipe implements PipeTransform {
  /**
   * Takes a date value and returns a pretty string from current time, 
   * for instance: "four hours ago" or "in eleven minutes".
   */
  transform(value: string, ...args) {
    return moment(value).fromNow();
    //return value.toLowerCase();
  }
}

我看到:

<div>{{ date | momentjs }}</div>

完美!再次感谢你!

© www.soinside.com 2019 - 2024. All rights reserved.