Aviso de tradução por IA
Esta documentação foi traduzida automaticamente por IA.
Visão Geral das Extensões de Bloco
Na NocoBase 2.0, o mecanismo de extensão de bloco foi bastante simplificado. Desenvolvedores só precisam herdar a classe base FlowModel correspondente e implementar os métodos de interface relacionados (principalmente o método renderComponent()) para personalizar blocos rapidamente.
Categorias de Blocos
NocoBase categoriza os blocos em três tipos, exibidos em grupos na interface de configuração:
- Blocos de Dados: Blocos que herdam de
DataBlockModel ou CollectionBlockModel
- Blocos de Filtro: Blocos que herdam de
FilterBlockModel
- Outros Blocos: Blocos que herdam diretamente de
BlockModel
O agrupamento dos blocos é determinado pela classe base correspondente. A lógica de classificação é baseada nas relações de herança e não requer configuração adicional.
Descrição das Classes Base
O sistema oferece quatro classes base para extensões:
BlockModel
Modelo de Bloco Básico, a classe base de bloco mais versátil.
- Ideal para blocos de exibição pura que não dependem de dados.
- É categorizado no grupo Outros Blocos.
- Aplicável a cenários personalizados.
DataBlockModel
Modelo de Bloco de Dados (não vinculado a uma tabela de dados), para blocos com fontes de dados personalizadas.
- Não é diretamente vinculado a uma tabela de dados, permitindo personalizar a lógica de busca de dados.
- É categorizado no grupo Blocos de Dados.
- Aplicável a: chamadas de APIs externas, processamento de dados personalizado, gráficos estatísticos, entre outros cenários.
CollectionBlockModel
Modelo de Bloco de Coleção, para blocos que precisam ser vinculados a uma tabela de dados.
- Requer vinculação a uma classe base de modelo de tabela de dados.
- É categorizado no grupo Blocos de Dados.
- Aplicável a: listas, formulários, quadros Kanban e outros blocos que dependem claramente de uma tabela de dados específica.
FilterBlockModel
Modelo de Bloco de Filtro, para construir blocos de condição de filtro.
- Classe base de modelo para construir condições de filtro.
- É categorizado no grupo Blocos de Filtro.
- Geralmente funciona em conjunto com blocos de dados.
Como Escolher uma Classe Base
Ao selecionar uma classe base, você pode seguir estes princípios:
- Precisa vincular a uma tabela de dados: Priorize
CollectionBlockModel.
- Fonte de dados personalizada: Escolha
DataBlockModel.
- Para definir condições de filtro e trabalhar com blocos de dados: Escolha
FilterBlockModel.
- Não tem certeza de como categorizar: Escolha
BlockModel.
Início Rápido
Criar um bloco personalizado requer apenas três passos:
- Herdar a classe base correspondente (por exemplo,
BlockModel).
- Implementar o método
renderComponent() para retornar um componente React.
- Registrar o modelo de bloco no plugin.
Para exemplos detalhados, consulte Escrever um Plugin de Bloco.