Использование Moment.js, чтобы проверить, превышает ли дата число x лет - PullRequest
0 голосов
/ 03 октября 2018

Мне нужно проверить, не превышает ли моя дата число X лет тому назад.

Например;Если через 2018-01-01 прошло более 3 лет, закрасьте его янтарным цветом, иначе, если прошло более 4 лет, закрасьте его красным.

Пока что я только что использовал diff ()но это не совсем то, что мне нужно.

                var difference = moment(data.purchase_date, "YYYY-MM-DD").month(0).from(moment().month(0));

            if ( difference === "3 years ago") {
              $("td:eq(5)", row).addClass("bgc-orange-50");
            } else if(difference === "4 years ago") {
              $("td:eq(5)", row).addClass("bgc-red-50");
            }

Ответы [ 2 ]

0 голосов
/ 03 октября 2018

Я с этим справился.

    var purchase_date = moment(data.purchase_date, "YYYY-MM-DD");
    var now = moment();

    var difference = now.diff(purchase_date, 'days');

Затем выполните оператор if, чтобы проверить, что дни больше 1095, но меньше 1460 и т. Д.

0 голосов
/ 03 октября 2018

    var a = moment("2015-05-05", "YYYY") // year in your date
    var b = moment(new Date(), "YYYY") // current year
    
    var yearCountDiff = b.diff(a, 'year')
    console.log(yearCountDiff)

    if ( yearCountDiff === 3) {
       console.log ('3 years')
       // $("td:eq(5)", row).addClass("bgc-orange-50");
    } else if(yearCountDiff === 4) {
      console.log ('4 years')
       // $("td:eq(5)", row).addClass("bgc-red-50");
    }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
...