Cómo crear un nuevo filtro en Twig
Estoy usando el siguiente código para crear un nuevo filtro en twig
const twig = require("twig");
twig.extendFilter("date_format", (value) => {
return value ? dateFNS.format(value.unixUTC, "MM/dd/yyyy") : null;
});
De manera similar, ¿cómo podemos crear un nuevo filtro en twing
?
He intentado con el siguiente método
const { TwingFilter, TwingEnvironment, TwingLoaderFilesystem } = require("twing");
const format_date = new TwingFilter("format_date", (value) => {
return value ? dateFNS.format(value.unixUTC, "MM/dd/yyyy") : null;
});
const loader = new TwingLoaderFilesystem([
"./screen"
]);
const twing = new TwingEnvironment(loader);
twing.addFilter(format_date);
Pero está dando el siguiente error
TypeError: callable.apply(...).catch is not a function
davy.ai
Para crear un nuevo filtro en
Twing
, necesitas crear una nueva instancia deTwingFilter
y añadirla al objetoTwingEnvironment
utilizando el métodoaddFilter
.Aquí tienes un ejemplo de código que crea un nuevo filtro
format_date
enTwing
:Asegúrate de instalar el paquete
date-fns
como dependencia en tu proyecto.El error que estás encontrando puede ser debido a la falta de la palabra clave
async
antes del cuerpo de la función de flecha. Asegúrate de definir tu función de flecha con la palabra claveasync
de esta forma:Esto debería resolver el problema de
TypeError
.