Programing

AngularJS.

lottogame 2020. 12. 6. 20:48
반응형

AngularJS. 태그 값 변환 (Unix 시간을 사람이 읽을 수있는 시간으로)


데이터베이스에서 데이터를 가져 와서 표시하고 있습니다.

    <ul>
       <li ng-repeat="item in items>
          <mydate>{{item.date}}</mydate>
        </li>
    </ul>

{{item.date}}1374843600과 같은 Unix 날짜는 어디에 있습니까 ? AngularJS 지시문을 사용하여 날짜 형식을 어떻게 설정할 수 있습니까? 가능합니까?

내가 그것을 시도했을 때 태그 mydate의 값을 얻었습니다.{{item.date}}


다음 date filter과 같은 형식을 사용하십시오 .

<mydate>{{item.date * 1000 | date:'yyyy-MM-dd HH:mm:ss Z'}}</mydate>

참고


epoch 시작부터 또는 JavaScript에서 사용되는 밀리 수로 형식이 지정된 유닉스 시간 문제에 직면했습니다 . 엄밀히 말하면 AngularJS는 Unix 타임 스탬프를 Date로 변환하지 않고 1000 배 더 큰 밀리 초를 가진 숫자이므로 먼저 다음과 같이 입력 숫자에 1000을 곱해야합니다.

<mydate>{{item.date * 1000 | date:'yyyy-MM-dd HH:mm:ss Z'}}</mydate>

그렇지 않으면 날짜가 잘못됩니다.


Unix 타임 스탬프가있는 경우 Unix 타임 스탬프가 초 단위이고 AngularJs 날짜 필터에 밀리 초가 필요하므로 타임 스탬프에 1000을 곱해야 할 것입니다.

vm.milliseconds = Date('1441981121' * 1000);

그런 다음 $ filter () 함수를 사용하십시오.

var date = $filter('date')(vm.milliseconds, 'd MMMM yyyy');

또는 ng-bind에서 사용할 수 있습니다.

<span ng-bind="myController.milliseconds | date : 'd MMMM yyyy'"></span>

angular : 여기에서 이미 제공된 날짜 필터를 사용해야합니다.


 yourapp.filter('timestampToDate', function () {
    return function (timestamp) {
        var date = new Date(timestamp * 1000);
        var dateObject = date.getFullYear() +'/'+ ('0' + (date.getMonth() + 1)).slice(-2) +'/'+ ('0' + date.getDate()).slice(-2);
        return dateObject;
    };
});

용법:
{{timestamp | timestampToDate}}


rsTime이라는 지시문이 있습니다.

    <rs-time start-time="1478513323" digital-format="'ddd MMM d h:mm TT'"></rs-time>

Plunker 에서 데모를 확인하십시오 .

다음은 다양한 시간 형식입니다.

 M/d/y -  11/7/2016

 HH:mm:ss - 16:02:31 (24hrs formate)

 hh:mm:ss TT - 04:03:10 PM

 ddd MMM d h:mm TT  - Mon Nov 7 at 4:04 PM

설명서를 보려면 Github를 방문하십시오.

참고 URL : https://stackoverflow.com/questions/17925020/angularjs-convert-tag-value-unix-time-to-human-Ready-time

반응형