Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

230
Views
¿Cómo puedo establecer cuándo ejecutar los decoradores de TypeScript?

Cuando defino un decorador parametrizado para el método, el decorador comienza a ejecutarse antes de que se ejecute el método.

Quiero que el decorador se ejecute después de llamar al método.

 function fooDecorator(value: boolean) { console.log('fooDecorator init'); return function (target: any, propertyKey: string, descriptor: PropertyDescriptor) { }; } class Foo{ @fooDecorator(true) foo(){ } } app.listen(5000, () => console.log("server started")); // Output fooDecoratorinit server started
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Los decoradores de métodos de TypeScript se ejecutan durante la inicialización de la clase, por lo que pueden decorar el método; ver la documentación . Si desea que un decorador haga algo cuando se llama al método, haga que el decorador ajuste el método en otra función que haga lo que usted desea que haga:

 function fooDecorator(flag: boolean) { return function (target: any, propertyKey: string; descriptor: PropertyDescriptor) { const original = target[propertyKey]; return { ...descriptor, value(...args: any[]) { console.log("Inserted behavior, flag = " + flag); return original.apply(this, args); } } }; } class Foo{ @fooDecorator(true) foo(){ console.log("Original foo"); } } const f = new Foo(); f.foo();

Enlace del patio de recreo

Producción:

Comportamiento insertado, bandera = verdadero
Foo original
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!