timeago plugin을 사용하여 날짜를 더 멋지게 보이게하고 싶습니다. 문제는 이러한 날짜가 REST에서 AngularJS를 통해 동적으로 가져 오는 것입니다. 그래서,이 jQuery 플러그인을 내 페이지에 첨부하면 처리되지 않습니다.jQuery timeago 또는 momentjs와 AngularJS를 함께 사용하십시오.
그럼 어떻게하면 좋을까요? 가능한 경우 jQuery없이 실행하면 기쁠 것입니다.
timeago plugin을 사용하여 날짜를 더 멋지게 보이게하고 싶습니다. 문제는 이러한 날짜가 REST에서 AngularJS를 통해 동적으로 가져 오는 것입니다. 그래서,이 jQuery 플러그인을 내 페이지에 첨부하면 처리되지 않습니다.jQuery timeago 또는 momentjs와 AngularJS를 함께 사용하십시오.
그럼 어떻게하면 좋을까요? 가능한 경우 jQuery없이 실행하면 기쁠 것입니다.
나는 momentjs - http://momentjs.com/을 사용할 것입니다 - 의존성은 없습니다.
그러면 'timeAgo'또는 'fromNow'라는 필터를 만들면됩니다. 그 momentjs 그것을 부르는 때문에 당신은 아마 fromNow
를 호출한다 : 당신은 단지보기에 바인딩 간단한 데이터 사용합니다
angular.module('myApp').filter('fromNow', function() {
return function(date) {
return moment(date).fromNow();
}
});
: 당신이 정말 jQuery 플러그인을 사용하고자하는 경우
<p>Pizza arrives {{pizzaArrivalDate | fromNow}}</p>
을, 당신 아마도 지침을 작성해야 할 것입니다. 그러나 데이터를 DOM 요소에 연결하기 때문에 그렇게하는 것은 좋지 않습니다. 위의 방법은 각도 방식의 DOM에서 데이터를 분리합니다. 귀엽습니다 :-D
jQuery가 필요한 경우 지시어/필터를 작성하는 것이 좋습니다.
app.directive("timeAgo", function($compile) {
return {
restrict: "C",
link: function(scope, element, attrs) {
jQuery(element).timeago();
}
};
});
app.filter("timeAgo", function() {
return function(date) {
return jQuery.timeago(date);
};
});
당신은 (momentjs을 기반으로) angular-moment 모듈에서 am-time-ago
지시어를 사용할 수 있습니다.
jQuery가 필요하지 않으며 시간이 갈수록 시간이 업데이트됩니다. 예 :
<span am-time-ago="lastLoginTime"></span>
상기 범위의 함유량은, "2 시간 전", 예를 들어, 상대적으로 시간 문자열로 치환되고, 시간이 진행됨에 따라 자동으로 갱신한다.
위대한 발견 urish! 명시된대로 작동하고 업데이트됩니다. 참고 사항 : 앱에 종속성을 추가하는 것을 잊지 마세요. 각 도형 문서를 참조하십시오. –
@urish : 'am-time-ago'을 맞춤 형식으로 사용할 수있는 방법이 있습니까? "2 시간 전"대신 "2 시간"? –
'의 형식을 사용자 정의에 대한 대답을 여기보기는 AM-시간 ago' : http://stackoverflow.com/questions/22964767/how-to-format-angular-moments-am-time-ago-directive – urish
moment.js가 최선의 선택입니다. 필자는 모든 순간 서식 지정 방법을 사용할 수있는 일반 순간 필터를 만들었습니다.
angular.module('myApp', [])
.filter('moment', [
function() {
return function (date, method) {
var momented = moment(date);
return momented[method].apply(momented, Array.prototype.slice.call(arguments, 2));
};
}
]);
행동을 체크 아웃 할 수
처럼 사용 ...하지만이 솔루션은 바로, 시간이 진행됨에 따라 시간을 업데이 트하지 않습니다? – Ztyx
그렇지 않습니다. 하나 또는 그 이상의 요소를 새로 고침하는 지시문을 원할 것입니다 (범위를 지정하지 않으려 고합니다. $ 분마다 적용, 요소의 텍스트 만 업데이트). –
어떻게하는지 알아 내려고 잠시. "권"이 게시 한 지침을 사용하는 것은 나를 위해하지 않았습니다. 밖으로 나왔다, 나는 title 속성을보아야했다. 예를 보려면 https://gist.github.com/JensRantil/5470122를 참조하십시오. – Ztyx