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

465
Views
Cómo convertir decorador @acción a acción no decorador en MobX

Estoy eliminando decoradores de mi aplicación React Native (demasiados problemas con babel) y mis acciones no funcionan (la función contenida no se ejecuta).

Estoy traduciendo acciones de clase, por ejemplo

 class MyStore { //... @action myAction(param) { //... } }

Para

 class MyStore { //... myAction(param) { action("Perform action with param", (param) => { //... }) } }

¿Cuál es la forma correcta de convertir una clase @action a la forma no decoradora?

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Puede definir la acción como

 class MyStore { //... myAction = action(param => { //... }); }

o usa runInAction()

 class MyStore { //... myAction(param) { runInAction(() => { //... }) } }
over 4 years ago · Santiago Trujillo Report

0

¿Cuál es la forma correcta de convertir una clase @action a la forma no decoradora?

Los decoradores evalúan las llamadas de función en tiempo de ejecución, por lo que simplemente llamarlas manualmente sería lo más sencillo. @action es un decorador de métodos, y los decoradores de métodos toman los siguientes argumentos en tiempo de ejecución:

  1. El prototipo de clase para métodos de instancia (función constructora para métodos estáticos)
  2. El nombre del método (clave de propiedad)
  3. El descriptor de propiedad del método.

Con eso en mente, simplemente puede hacer:

 class MyStore { myAction(param) { // ... } } // Apply the @action decorator manually: action(MyStore.prototype, "myAction");

o:

 action(MyStore.prototype, "myAction", Object.getOwnPropertyDescriptor(MyStore.prototype, "myAction"));

Si hace esto inmediatamente después de la declaración de la clase, el resultado debería ser completamente idéntico al que se obtiene al usar decoradores, sin tener que usar la sintaxis del decorador.

over 4 years ago · Santiago Trujillo 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!