保誠-保戶業務員媒合平台
HelenHuang
2022-06-09 9bdb95c9e34cef640534e5e5a1e2225a80442000
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import Vue from 'vue'
 
Vue.filter('formatDate', (value: string | Date | null): string => {
  let date: Date;
  const today = new Date();
 
  if (!value) {
    return '尚無紀錄';
  };
 
  if (typeof value === 'string') {
    date = new Date(value);
  } else {
    date = value;
  };
 
  const isToday = (compareDate: Date): boolean => {
    return compareDate.getFullYear() === today.getFullYear()
          && compareDate.getMonth() === today.getMonth()
          && compareDate.getDate() === today.getDate();
  };
 
  const isThisYear = (compareDate: Date): boolean => {
    return compareDate.getFullYear() === today.getFullYear();
  };
 
  const minutes = date.getMinutes() > 9 ?  date.getMinutes() : `0${date.getMinutes()}`;
 
  if (isThisYear(date)) {
    return isToday(date)
          ? `今天 ${date.getHours()}:${minutes}`
          : `${date.getMonth() + 1}/${date.getDate()} ${date.getHours()}:${minutes}`;
  } else {
    return `${date.getFullYear()}/${date.getMonth() + 1}/${date.getDate()} ${date.getHours()}:${minutes}`;
  };
 
})