Visão geral
go_router é uma solução de roteamento declarativa para o Flutter que utiliza o Navigation 2.0 para habilitar links profundos, manipulação de rotas baseada em dados e navegação sem interrupções entre plataformas. Desenvolvido pela equipe do Flutter, simplifica a lógica de roteamento complexa com uma sintaxe limpa e expressiva. O roteador suporta rotas dinâmicas, guardas de rota e navegação aninhada, tornando-o ideal para aplicações escaláveis. Integra-se perfeitamente ao ecossistema do Flutter e fornece ferramentas robustas para gerenciar estado durante transições de navegação.
Casos de uso
- Linking profundo em aplicativos móveis e web
- Configuração de rota dinâmica
- Estruturas de navegação aninhadas
- Acesso seguro à rota com guardas
- Navegação com estado e parâmetros de consulta
Principais recursos
- Definições declarativas de rota
- Suporte para linkagem profunda
- correspondência de rota orientada por dados
- Guardas de rota e redirecionamentos
- Hierarquias de rotas aninhadas
Indicado para
- Aplicações Flutter em grande escala
- Aplicativos que exigem linkagem profunda
- Desenvolvedores em busca de padrões modernos de roteamento
- Projetos que precisam de controle de acesso seguro ao roteamento
- Aplicativos multiplataforma direcionados a vários dispositivos
Considerações
- Requer conhecimento sobre Navegação 2.0
- Pode introduzir complexidade em aplicativos simples
- Necessita de gerenciamento cuidadoso do estado durante a navegação
- Plugins da comunidade limitados em comparação com roteadores antigos
- A migração do roteamento legado pode exigir refatoração
