Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev4.0.9

riverpod_generator

Um gerador de código para Riverpod. Isso simplifica a sintaxe e potencializa, como permitir recarregamento quente com estado.

AndroidiOSmacOSWindowsLinux
Downloads em 30 dias
1,1 mi
Curtidas
437
Pontos Pub
130

Instalar pacote

flutter pub add riverpod_generator

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

Riverpod_generator é uma ferramenta de geração de código para a biblioteca de gerenciamento de estado Riverpod no Flutter. Ela simplifica o código repetitivo ao gerar automaticamente as definições de provedores, permitindo uma sintaxe mais limpa e uma experiência de desenvolvedor aprimorada. O gerador suporta recarga quente com estado, permitindo que o estado permaneça durante o desenvolvimento sem reinícios. Ele se integra perfeitamente ao ecossistema do Riverpod, reduzindo a codificação manual e melhorando a manutenibilidade. Projetado para desempenho e facilidade de uso, ajuda os desenvolvedores a se concentrarem na lógica em vez de configurações repetitivas.

Casos de uso

  • Simplificando declarações complexas de provedores
  • Habilitar recarga quente com estado no desenvolvimento
  • Reduzindo o código repetitivo em aplicativos de grande escala
  • Automatizando a criação de provedores em múltiplos arquivos
  • Melhorar a legibilidade e a manutenibilidade do código

Principais recursos

  • Geração automática de código do provedor
  • Suporte a recarregamento quente com estado
  • Reduz o código boilerplate manual
  • Integra-se à API do Riverpod
  • Gera código seguro por tipo

Indicado para

  • Desenvolvedores Flutter usando Riverpod
  • Equipes que desenvolvem aplicativos com gerenciamento de estado escalonável
  • Desenvolvedores que buscam iteração mais rápida com recarregamento quente
  • Projetos que exigem lógica de estado limpa e sustentável
  • Aqueles que desejam minimizar a configuração repetida do provedor

Considerações

  • Requer configuração de geração de código Dart
  • Necessita de configuração adequada do build_runner
  • Pode aumentar levemente o tempo de compilação
  • Depende do pacote principal do Riverpod
  • Não necessário para provedores simples e escritos à mão

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

Build Status codecov Star on Github License: MIT Discord

Deploys by Netlify

Riverpod


A reactive caching and data-binding framework. https://riverpod.dev Riverpod makes working with asynchronous code a breeze by:

  • Handling errors/loading states by default. No need to manually catch errors
  • Natively supporting advanced scenarios, such as pull-to-refresh
  • Separating the logic from your UI
  • Ensuring your code is testable, scalable and reusable
riverpod pub package
flutter_riverpod pub package
hooks_riverpod pub package

Welcome to Riverpod (anagram of Provider)!

For learning how to use Riverpod, see its documentation: >>> https://riverpod.dev <<<

Long story short:

  • Define network requests by writing a function annotated with @riverpod:

    @riverpod
    Future<String> boredSuggestion(Ref ref) async {
      final response = await http.get(
        Uri.https('boredapi.com', '/api/activity'),
      );
      final json = jsonDecode(response.body);
      return json['activity']! as String;
    }
    
  • Listen to the network request in your UI and gracefully handle loading/error states.

    class Home extends ConsumerWidget {
      @override
      Widget build(BuildContext context, WidgetRef ref) {
        final boredSuggestion = ref.watch(boredSuggestionProvider);
        // Perform a switch-case on the result to handle loading/error states
        return switch (boredSuggestion) {
          AsyncData(:final value) => Text('data: $value'),
          AsyncError(:final error) => Text('error: $error'),
          _ => const Text('loading'),
        };
      }
    }
    

Contributing

Contributions are welcome!

Here is a curated list of how you can help:

  • Report bugs and scenarios that are difficult to implement
  • Report parts of the documentation that are unclear
  • Fix typos/grammar mistakes
  • Update the documentation or add examples
  • Implement new features by making a pull-request

Sponsors

Categorias

Dependências

Lista de dependências 12 itens

Repositório-fonte

Projetos que usam este pacote