logologo
Começar
Manual
Desenvolvimento
Plugins
API
Início
English
简体中文
日本語
한국어
Español
Português
Deutsch
Français
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
Começar
Manual
Desenvolvimento
Plugins
API
Início
logologo

Introdução

O que é o FlowEngine?
Relação entre FlowEngine e Plugins
Início Rápido
Roteiro de Aprendizagem

Guia

Registrar FlowModel
Criar FlowModel
Renderizar FlowModel
Fluxo de Eventos e Configuração do FlowModel
Persistência do FlowModel
Ciclo de Vida do FlowModel
Sistema de Contexto do FlowModel
Mecanismo Reativo: Observable
FlowModel vs React.Component
Pontos de Extensão do Plugin RunJS

Definições

ModelDefinition
FlowDefinition
EventDefinition
ActionDefinition
StepDefinition
Next PageO que é o FlowEngine?
Aviso de tradução por IA

Esta documentação foi traduzida automaticamente por IA.

#createMockClient

Para exemplos e testes, geralmente recomendamos que você construa rapidamente um aplicativo mock usando createMockClient. Um aplicativo mock é uma aplicação limpa e vazia, sem plugins ativados, destinada exclusivamente para exemplos e testes.

Por exemplo:

import { createMockClient, Plugin } from '@nocobase/client';

class PluginHelloModel extends Plugin {
  async afterAdd() {}
  async beforeLoad() {}
  async load() {}
}

// Para cenários de exemplo e teste
const app = createMockClient({
  plugins: [PluginHelloModel],
});

export default app.getRootComponent();

O createMockClient oferece o apiMock para construir dados de API mock.

import { createMockClient, Plugin } from '@nocobase/client';

class PluginHelloModel extends Plugin {
  async afterAdd() {}
  async beforeLoad() {}
  async load() {
    const { data } = await this.context.api.request({
      method: 'get',
      url: 'users',
    });
  }
}

// Para cenários de exemplo e teste
const app = createMockClient({
  plugins: [PluginHelloModel],
});

app.apiMock.onGet('users').reply(200, {
  data: {
    id: 1,
    name: 'John Doe',
  },
});

export default app.getRootComponent();

Com base no createMockClient, podemos estender rapidamente a funcionalidade através de plugins. As APIs comuns para plugins incluem:

  • plugin.router: Estende rotas
  • plugin.engine: Motor de frontend (NocoBase 2.0)
  • plugin.context: Contexto (NocoBase 2.0)

Exemplo 1: Adicione uma rota via router.

import { createMockClient, Plugin } from '@nocobase/client';

class PluginHelloModel extends Plugin {
  async afterAdd() {}
  async beforeLoad() {}
  async load() {
    this.router.add('root', {
      path: '/',
      element: <div>Hello</div>,
    });
  }
}

// Para cenários de exemplo e teste
const app = createMockClient({
  plugins: [PluginHelloModel],
});

export default app.getRootComponent();

Apresentaremos mais conteúdo nos próximos capítulos.