2016-09-04 7 views
1

Deprecation warning: moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info. Arguments: [object Object]Moment.js - 私は日付を解析していますが、それはまだ

私の知る限り、私はパースのドキュメントに従って日付を解析しています文句を言います。

提案がありますか?

function graphTitleGenerator(data) { 
    var formats = { 
    sameDay: '[Today]', 
    nextDay: '[Tomorrow]', 
    nextWeek: 'dddd', 
    lastDay: '[Yesterday]', 
    lastWeek: 'MM/DD/YYYY', 
    sameElse: 'MM/DD/YYYY' 
    } 
    var today = new Date(); 
    var refDate = (today.getMonth()+1) + '-' + today.getDate() 
    + '-' + today.getFullYear(); 
    var graphTitle = moment(data.date, 'MM-DD-YYYY').calendar(refDate, formats); 
    return graphTitle; 
} 
+0

'瞬間()カレンダー(refDate、フォーマットは)'正常に動作する必要があります:あなたが望むように見える瞬間が今日から1ヶ月だけであるので、以下のように、あなたのコードを書くことができます。 moment()のデフォルトは今日の日付です。 – vijayst

+1

'moment(Date、String)'や 'moment(Object、String)'のようなものはありません。 – Tibrogargan

+0

私はそれがフォーマットの問題だと思います。MMは01を受け取り、あなたは1を渡します.DD – ForceUser

答えて

1

フォーマットを試してみてください - 「MD-YYYY」月と日が一桁の数字として、あなたは0

1

を前置されていない、あなたのコードに問題がrefDateになるということです:'9-4-2016'、それはないです既知のフォーマットです。したがって、.calendar()を呼び出すと、そのエラーがスローされます。

だから、私はあなたに、コードを変更することをお勧めします:あなたはカレンダーを呼び出すと、それはrefDateための瞬間オブジェクトを受け入れる

function dateToMDY(date) { 
    var d = date.getDate(); 
    var m = date.getMonth() + 1; 
    var y = date.getFullYear(); 
    return '' + (m <= 9 ? '0' + m : m) + '-' + (d <= 9 ? '0' + d : d) + '-' + y; 
} 

function graphTitleGenerator(data) { 
    var formats = { 
    sameDay: '[Today]', 
    nextDay: '[Tomorrow]', 
    nextWeek: 'dddd', 
    lastDay: '[Yesterday]', 
    lastWeek: 'MM/DD/YYYY', 
    sameElse: 'MM/DD/YYYY' 
    } 
    var today = new Date(); 
    var refDate = dateToMDY(today); 
    var graphTitle = moment(data.date, 'MM-DD-YYYY').calendar(refDate, formats); 
    return graphTitle; 
} 
+0

nice 'return'と同じです! moment.jsは '09-04-2016'と' 'MM-DD-YYYY''でまだ不平を言っている – dman

1

。 。

function graphTitleGenerator(data) { 
    var formats = { 
    sameDay: '[Today]', 
    nextDay: '[Tomorrow]', 
    nextWeek: 'dddd', 
    lastDay: '[Yesterday]', 
    lastWeek: 'MM/DD/YYYY', 
    sameElse: 'MM/DD/YYYY' 
    } 

    var graphTitle = moment(data.date, 'MM-DD-YYYY').calendar(moment().add(1, month), formats); 
    return graphTitle; 
} 
関連する問題