• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

322
Vistas
Ember Octane vs Old Ember la habilidad de usar el método `reopen()`

Así que estoy trabajando para convertir un archivo app.js principal de ellos a Ember 4 y javascript nativo. Mi pregunta es cómo manejan las personas la modificación de cosas como la clase Route . Mi porción actual de códigos se ve así.

 Route.reopen({ //breadCrumb: null currentRouteModel: function () { return this.modelFor(this.routeName); } });

Quiero decir, supongo que puedo reescribir el caso de instancia del método en todas partes para hacer exactamente lo que está devolviendo, pero quería ver qué está haciendo la gente. También tengo un Component reabierto en app.js que necesito arreglar en la migración.

about 3 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

lo principal que he visto hacer a la gente es una de dos cosas:

  • copiar el código en los lugares que lo usan
  • hacer un decorador de clase y aplicarlo a las clases que lo necesitan

Un decorador de clase se vería así (y solo funcionaría en JS, y TypeScript no sabe cómo funciona la herencia "quizás" con los decoradores de clase (está bien, técnicamente "funcionaría" en TS, pero obtendría tipo -errores)):

 // usage @withCurrentRouteModel export default class MyRoute extends Route {} // implementation function withCurrentRouteModel(OriginalRoute) { return class extends OriginalRoute { @service router; get routeName() { return this.router.currentRouteName; } get currentRouteModel() { this.modelFor(this.routeName); } } }

Agregué un uso del RouterService

porque no estaba familiarizado con routeName

about 3 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda