logologo
Začínáme
Manuál
Vývoj
Pluginy
API
Domů
English
简体中文
日本語
한국어
Español
Português
Deutsch
Français
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
Začínáme
Manuál
Vývoj
Pluginy
API
Domů
logologo

Úvod

Co je FlowEngine?
FlowEngine a pluginy
Rychlý start
Plán učení

Průvodce

Registrace FlowModel
Vytvoření FlowModel
Vykreslení FlowModel
Tok událostí a konfigurace FlowModel
Perzistence FlowModel
Životní cyklus FlowModel
Kontextový systém FlowModel
Reaktivní mechanismus: Observable
FlowModel vs React.Component
Body rozšíření pluginu RunJS

Definitions

ModelDefinition
FlowDefinition
EventDefinition
ActionDefinition
StepDefinition
Next PageCo je FlowEngine?
TIP

Tento dokument byl přeložen umělou inteligencí. V případě nepřesností se prosím obraťte na anglickou verzi

#createMockClient

Při tvorbě příkladů a testů se obvykle doporučuje rychle vytvořit mock aplikaci pomocí createMockClient. Mock aplikace je čistá, prázdná aplikace bez aktivovaných pluginů, určená výhradně pro příklady a testování.

Například:

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

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

// Pro příklady a testovací scénáře
const app = createMockClient({
  plugins: [PluginHelloModel],
});

export default app.getRootComponent();

createMockClient poskytuje apiMock pro vytváření mock dat API.

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',
    });
  }
}

// Pro příklady a testovací scénáře
const app = createMockClient({
  plugins: [PluginHelloModel],
});

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

export default app.getRootComponent();

Na základě createMockClient můžeme rychle rozšiřovat funkcionalitu pomocí pluginů. Mezi běžně používaná API pro Plugin patří:

  • plugin.router: Rozšíření rout
  • plugin.engine: Frontendový engine (NocoBase 2.0)
  • plugin.context: Kontext (NocoBase 2.0)

Příklad 1: Přidání routy přes 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>,
    });
  }
}

// Pro příklady a testovací scénáře
const app = createMockClient({
  plugins: [PluginHelloModel],
});

export default app.getRootComponent();

Další podrobnosti si představíme v následujících kapitolách.