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

287
Visualizações
Front-end angular/general: ¿deberían los componentes "abrir un cuadro de diálogo"?

Suponiendo MatDialog o cualquier implementación de "servicio de apertura de diálogo", donde se abre un diálogo con dialogService.open , ¿la "lógica de apertura de diálogo" sería adecuada en el componente en sí o en un efecto de biblioteca Store (NGRX)?

componente.ts

 foo(): void { this.dialogService.openDialog(BarDialog, params) }

contra

componente.ts

 foo(): void { this.store.dispatchAction(OpenBarDialog, params) }

y el Efecto tendría la "lógica de apertura de diálogo". Mi intuición es que "abrir un cuadro de diálogo es un efecto secundario".

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

No creo que haya una única respuesta específica a esta pregunta, todo se reduce a lo que necesitas. Aquí están mis dos centavos que absolutamente quiero decir como un asunto para discutir sobre (!)

Tener esta lógica en un efecto hace que esto sea mucho más fácil de refactorizar y reutilizar eventualmente. Sin embargo, si la "respuesta" a este cuadro de diálogo (reaccionar a, por ejemplo, una acción de cierre) solo debe ser consumida por el componente con el que comenzó a abrir el cuadro de diálogo, entonces, ¿por qué abstraer todo en un efecto en primer lugar?

Por otro lado, si va hasta el final con NGRX, eventualmente terminará con un código que es mucho más legible y razonable.

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