2014-05-13 14 views
6

Po prostu utworzyłem filtr do konwersji mojej daty na czas. I nazwałbym oficjalny filtr "date" AngularJS.Czy mogę użyć filtra wewnątrz filtra w AngularJS?

project.date_created_at i project.mel nie mają tego samego formatu. Dlatego muszę utworzyć niestandardowy filtr dla project.date_created_at.

HTML:

<span>{{ project.date_created_at | dateCustom }}</span> 
<span>{{ project.mel | date:'dd/MM/yyyy' }}</span> 

JS:

myApp.filter('dateCustom', function() { 
    return function (input) { 

     if(input != undefined) { 
      var d = new Date(input); 
      var time = d.getTime(); 
      // use official $filter('date') here ? 
     } 

    } 
}); 

Chciałbym użyć tego formatu:

date:'dd/MM/yyyy' 

Odpowiedz

11

można wstrzyknąć $ filtr jako zależność jak zrobiłbyś to dla ac ontroller, usługa lub dyrektywa.

myApp.filter('myFilter',[ '$filter', function ($filter) { 
    return function (input) { 
     /** 
     Do your stuff 
     **/ 
     return $filter('date')(myDate,myFormat); 
    } 
}]); 

Na marginesie, należy użyć angular.isDefined zamiast != undefined.

Zobacz dokumentację $filter i date więcej szczegółów

+0

woohoo! Świetna odpowiedź ! Działa świetnie! Merci Julien. ;-) – Steffi

+0

Nie ma za co. :) – Julien

Powiązane problemy