Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

92
Visualizações
Retorno implícito en un método de clase javascript

Supongamos que tengo este código:

 class AuthService { loginWithEmailAndPassword(email, password) { return apolloClient.mutate({}); } } export default new AuthService();

¿Existe una forma moderna de escribir loginWithEmailAndPassword para tener un retorno implícito?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Sí, con la función de campos de clase pública más reciente, puede agregar la función a su instancia.

 class AuthService { loginWithEmailAndPassword = (email, password) => ( { email, password } ) } const authService = new AuthService() console.log(authService.loginWithEmailAndPassword('x@y', 'Password!'))

Tenga en cuenta que hay un par de diferencias cuando hace esto:

  • Las funciones de flecha vinculan automáticamente el valor "este" mientras que las funciones normales no lo hacen (en general, esto es algo bueno de todos modos)
  • Esta función se agregará a la instancia, no al prototipo. Esto tiene consecuencias importantes si espera que otros hereden su clase.

Un ejemplo del segundo punto:

 class BaseClass { f = () => 2 } class SubClass extends BaseClass { f() {} // Doesn't work - this won't shadow f() from the parent class f = () => super.f() // Doesn't work. This overrides f() from the parent class, so you can't access it's super method. }

Si aún no puede usar esta sintaxis, siempre puede crear estas funciones en su constructor, así:

 class AuthService { constructor() { this.loginWithEmailAndPassword = (email, password) => ( { email, password } ) } } const authService = new AuthService() console.log(authService.loginWithEmailAndPassword('x@y', 'Password!'))

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda