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

198
Visualizações
El tipo de expresión de cambio de caso 'Tipo' debe ser un subtipo del tipo de expresión de cambio 'BankEvent'

Recibo este error cuando trato de usar el cambio de caso en dart. Tengo una clase abstracta y dos clases que la extienden. Ver el código a continuación

 abstract class BankEvent{} class FetchBanks extends BankEvent{} class DeleteBank extends BankEvent{ final int bankId; DeleteBank(this.bankId); }

Tengo que hacer algunas implementaciones dentro del método handleEvents que dependen de la instancia de la clase que recibo como parámetro. Pero recibo el error (el tipo de expresión de cambio de caso 'Tipo' debe ser un subtipo del tipo de expresión de cambio 'BankEvent') en la declaración de caso del caso de cambio. Mi código para la implementación del caso del interruptor está a continuación

 handleEvents(BankEvent bankEvent){ switch(bankEvent){ case FetchBanks: break; } }
over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

¿Por qué no simplemente cambia su swith a una declaración if, así:

 handleEvents(BankEvent bankEvent){ if(bankEvent is FetchBank){ // FetchBank stuff }else if(bankEvent is DeleteBank){ // DeleteBank stuff } }

Esto funciona y es bastante legible. Además, puede deshacerse del enfoque de cambio.

over 4 years ago · Santiago Trujillo Relatório

0

Sí, finalmente encontré la respuesta después de un poco de investigación. Debería escribirse como se muestra a continuación.

 handleEvents(BankEvent bankEvent){ switch(bankEvent.runtimeType){ case FetchBanks: break; } }
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