반응형
AngularJs의 서비스에 dateFilter를 삽입합니다.
AngularJs의 서비스에 필터를 주입하는 방법이 있는지 알고 싶습니다.
난 노력해왔다.
app.factory('educationService', [function($rootScope, $filter) {
// ..... Some code
// What I want
console.log(dateFilter(new Date(), 'yyyy-MM-01'));
// ..... Some code
}]);
그래서 서비스에 필터를 주입할 수 있는지, 아니면 다른 방법으로 접근할 수 있는지 알고 싶습니다.
그리고 이 점에 관한 문서에 대한 링크가 있다면 매우 좋을 것입니다. :) Angular 문서를 검색했는데 도움이 되는 내용을 찾을 수 없었습니다.
감사합니다:)
먼저 다음과 같이 필터를 주입해야 합니다.
app.factory('myService', ['$rootScope', '$filter', function($rootScope, $filter)
(어레이는 빌드 프로세스에서 최소화를 사용하는 경우에만 필요)
특정 필터를 프로그래밍 방식으로 호출하려면:
$filter('date')(new Date(), 'yyyy-MM-01');
$filter(name)
는 특정 필터 함수를 반환합니다.이 함수는 인수를 사용하여 호출할 수 있습니다.
var dateFilter = $filter('date');
var filteredDate = dateFilter(new Date(), 'yyyy-MM-01')
필터 함수는 에 등록되어 있습니다.
$injector
가 붙은 필터명으로Filter
. -- $filterProvider 문서
이는 Angular 내장 필터 및 사용자 정의 필터에 적용됩니다.
그래서 주사할 수 있습니다.dateFilter
다음과 같이 서비스를 제공합니다(최소화하지 않은 경우).
app.factory('educationService', [function($rootScope, dateFilter) {
필터를 1개만 사용하고 있는 경우, 이 방법을 사용하면 실제 의존관계를 보다 구체적으로 지정할 수 있습니다.여러 필터를 사용해야 하는 경우,$filter
@Stewie 쇼처럼.
언급URL : https://stackoverflow.com/questions/15408336/inject-datefilter-in-a-service-in-angularjs
반응형
'source' 카테고리의 다른 글
입력에 숫자(자릿수와 소수점)만 입력할 수 있도록 하려면 어떻게 해야 합니까? (0) | 2023.03.10 |
---|---|
테스트를 위해 레일 컨트롤러에 지연을 추가하는 방법 (0) | 2023.03.10 |
스프링 부트 2.1 bean 오버라이드 vs기본적인 (0) | 2023.03.10 |
Angular로 트리뷰를 만들 수 있습니까? (0) | 2023.03.10 |
react-router를 사용하여 브라우저에서 /#/을(를) 중지하는 방법 (0) | 2023.03.10 |