Перейти к основному содержимому

Пресеты

Preset - набор провайдеров. Пресеты можно применить к приложениям. Сам по себе пресет не хранит компоненты и не инициализирует их. Он только предоставляет провайдеры.

Обычно в проектах не придется самостоятельно создавать пресеты. В будущем функциональность пресетов может перейти к самому приложению.

Пакет isomorph предоставляет несколько пресетов, цель которых унифицировать похожие по функционалу микросервисы.

Пример использования

Возьмем пресет Node.js-приложения из пакета.

import { createApplication } from '@sima-land/isomorph/di';
import { PresetNode } from '@sima-land/isomorph/preset/node';

const app = createApplication();

app.preset(PresetNode());

Пресеты позволяют переопределять заложенные в них провайдеры в отличии от приложений и DI-контейнеров.

import { createApplication } from '@sima-land/isomorph/di';
import { PresetNode } from '@sima-land/isomorph/preset/node';

const app = createApplication();

const preset = PresetNode()
.set(TOKEN.foo, provideFoo)
.set(TOKEN.bar, provideBar)
.set(TOKEN.baz, provideBaz);

app.preset(preset);