Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev1.0.0

nested

Um widget do Flutter que ajuda a aninhar múltiplos widgets sem precisar aninhá-los manualmente.

AndroidiOSWebmacOSWindowsLinux
Downloads em 30 dias
5,3 mi
Curtidas
350
Pontos Pub
150

Instalar pacote

flutter pub add nested

Visão geral do pacote

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

O pacote aninhado é uma utilidade do Flutter que simplifica a aninhamento de múltiplos widgets fornecendo uma maneira limpa e declarativa de compor eles sem precisar escrever manualmente estruturas de widgets aninhadas. Ele melhora a legibilidade e manutenibilidade em layouts de UI complexos, permitindo que os desenvolvedores encadear widgets de forma mais intuitiva. Ideal para reduzir o código repetitivo no código da interface, ele suporta todas as principais plataformas do Flutter, incluindo Android, iOS, Web, macOS, Windows e Linux.

Casos de uso

  • Simplificando hierarquias complexas de widgets
  • Reduzindo o código boilerplate de widget aninhado
  • Melhorar a legibilidade do código da interface
  • Simplificando a composição de layout
  • Criando cadeias de widgets reutilizáveis
  • Melhorando a manutenibilidade de grandes interfaces

Principais recursos

  • aninhamento declarativo de widget
  • Boilerplate mínimo
  • Composição de widget encadeável
  • Suporte multiplataforma
  • Sintaxe limpa e legível
  • Nenhuma dependência adicional

Indicado para

  • Desenvolvedores em busca de código de UI mais limpo
  • Projetos com widgets profundamente aninhados
  • Equipes que priorizam a manutenibilidade do código
  • Aplicações com foco em UI
  • Iniciantes do Flutter aprendendo composição
  • Desenvolvedores experientes otimizando padrões de layout

Considerações

  • Limitado apenas à composição de widget
  • Não é substituto para widgets de layout avançados
  • Pode aumentar a curva de aprendizado para novos usuários
  • Melhor usado em conjunto com outras estratégias de layout
  • Não substitui a gestão de estado
  • Requer conhecimento da árvore de widgets do Flutter

README original

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

pub package ci

A widget that simplifies the syntax for deeply nested widget trees.

Motivation

Widgets tend to get pretty nested rapidly. It's not rare to see:

MyWidget(
  child: AnotherWidget(
    child: Again(
      child: AndAgain(
        child: Leaf(),
      )
    )
  )
)

That's not very ideal.

There's where nested propose a solution. Using nested, it is possible to flatten the previous tree into:

Nested(
  children: [
    MyWidget(),
    AnotherWidget(),
    Again(),
    AndAgain(),
  ],
  child: Leaf(),
),

That's a lot more readable!

Usage

Nested relies on a new kind of widget: SingleChildWidget, which has two concrete implementation:

These are SingleChildWidget variants of the original Stateless/StatefulWidget.

The difference between a widget and its single-child variant is that they have a custom build method that takes an extra parameter.

As such, a StatelessWidget would be:

class MyWidget extends StatelessWidget {
  MyWidget({Key key, this.child}): super(key: key);

  final Widget child;

  @override
  Widget build(BuildContext context) {
    return SomethingWidget(child: child);
  }
}

Whereas a SingleChildStatelessWidget would be:

class MyWidget extends SingleChildStatelessWidget {
  MyWidget({Key key, Widget child}): super(key: key, child: child);

  @override
  Widget buildWithChild(BuildContext context, Widget child) {
    return SomethingWidget(child: child);
  }
}

This allows our new MyWidget to be used both with:

MyWidget(
  child: AnotherWidget(),
)

and to be placed inside children of [Nested] like so:

Nested(
  children: [
    MyWidget(),
    ...
  ],
  child: AnotherWidget(),
)

Categorias

Repositório-fonte

Projetos que usam este pacote