Wrappers
Эта страница — центральный хаб wrappers. Здесь можно выбрать нужный пакет и перейти к подробной инструкции по установке и использованию.
Исходная папка: https://github.com/tsparticles/tsparticles/tree/main/wrappers
Страницы wrappers
Самые популярные
Экосистема React
Экосистема Vue
Другие (в алфавитном порядке)
Angular ConfettiAngular FireworksAstroEmberInfernojQueryLitPreactQwikRiotSolidWeb ComponentsWordPress
Общий поток интеграции
Независимо от framework:
- установить wrapper +
@tsparticles/engine - загрузить функции один раз (
@tsparticles/slim,@tsparticles/allили пользовательские plugins) - отрендерить wrapper-компонент с опциями
Официальные wrappers (в алфавитном порядке)
Правило порядка для этого раздела:
сортировка по имени пакета
исключения явно указаны в примечаниях (например, WordPress требует полноценной установки)
@tsparticles/angular: wrapper-компонент для Angular (<ngx-particles />)
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/angular#readme - локальный гайд:/guide/wrappers-angular@tsparticles/astro: wrapper-компонент для Astro
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/astro#readme - локальный гайд:/guide/wrappers-astro@tsparticles/ember: wrapper для Ember
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/ember#readme - локальный гайд:/guide/wrappers-ember@tsparticles/inferno: wrapper-компонент для Inferno
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/inferno#readme - локальный гайд:/guide/wrappers-inferno@tsparticles/jquery: wrapper-плагин для jQuery
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/jquery#readme - локальный гайд:/guide/wrappers-jquery@tsparticles/lit: пакет компонентов Lit
Source: https://github.com/tsparticles/tsparticles/tree/main/wrappers/lit - локальный гайд:/guide/wrappers-lit@tsparticles/nextjs: wrapper для Next.js поверх@tsparticles/react
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/nextjs#readme - локальный гайд:/guide/wrappers-nextjs@tsparticles/nuxt2: модуль Nuxt 2 (регистрация на клиенте)
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/nuxt2#readme - локальный гайд:/guide/wrappers-nuxt2@tsparticles/nuxt3: модуль Nuxt 3 (регистрация на клиенте)
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/nuxt3#readme - локальный гайд:/guide/wrappers-nuxt3@tsparticles/nuxt4: модуль Nuxt 4 (регистрация на клиенте)
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/nuxt4#readme - локальный гайд:/guide/wrappers-nuxt4@tsparticles/preact: wrapper-компонент для Preact
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/preact#readme - локальный гайд:/guide/wrappers-preact@tsparticles/qwik: wrapper-компонент для Qwik
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/qwik#readme - локальный гайд:/guide/wrappers-qwik@tsparticles/react: wrapper-компонент для React
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/react#readme - локальный гайд:/guide/wrappers-react@tsparticles/riot: wrapper для Riot
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/riot#readme - локальный гайд:/guide/wrappers-riot@tsparticles/solid: wrapper-компонент для Solid
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/solid#readme - локальный гайд:/guide/wrappers-solid@tsparticles/svelte: wrapper-компонент для Svelte
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/svelte#readme - локальный гайд:/guide/wrappers-svelte@tsparticles/vue2: wrapper-компонент для Vue 2
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/vue2#readme - локальный гайд:/guide/wrappers-vue2@tsparticles/vue3: wrapper-компонент для Vue 3
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/vue3#readme - локальный гайд:/guide/wrappers-vue3@tsparticles/webcomponents: wrapper для Web Components (<web-particles />)
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/webcomponents#readme - локальный гайд:/guide/wrappers-webcomponents@tsparticles/wordpress: официальный пакет плагина WordPress
Source: https://github.com/tsparticles/tsparticles/tree/main/wrappers/wordpress - локальный гайд:/guide/wrappers-wordpressangular-confetti: Angular-wrapper для@tsparticles/confetti
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/angular-confetti#readme - локальный гайд:/guide/wrappers-angular-confettiangular-fireworks: Angular-wrapper для@tsparticles/fireworks
Docs: https://github.com/tsparticles/tsparticles/tree/main/wrappers/angular-fireworks#readme - локальный гайд:/guide/wrappers-angular-fireworks
Примечания по WordPress и Elementor
@tsparticles/wordpress— официальный пакет плагина, требующий полноценного WordPress-окружения.- Для Elementor нет официального отдельного плагина
tsParticles. - В README указана интеграция через Premium Addons for Elementor: https://premiumaddons.com/particles-section-addon-for-elementor-page-builder/
Сопоставление wrapper -> demo
Используйте эту матрицу, чтобы быстро перейти от wrapper-пакета к рабочему demo-проекту в монорепозитории.
Правило сортировки таблицы:
- по имени wrapper-пакета
- явное исключение для wrapper, которые не применимы к демо (
@tsparticles/wordpress)
Папка исходников demo: https://github.com/tsparticles/tsparticles/tree/main/demo
| Wrapper package | Demo project |
|---|---|
@tsparticles/angular | demo/angular |
@tsparticles/astro | demo/astro |
@tsparticles/ember | demo/ember |
@tsparticles/inferno | demo/inferno |
@tsparticles/jquery | demo/jquery |
@tsparticles/lit | demo/lit |
@tsparticles/nextjs | demo/nextjs, demo/nextjs-legacy |
@tsparticles/nuxt2 | demo/nuxt2 |
@tsparticles/nuxt3 | demo/nuxt3 |
@tsparticles/nuxt4 | demo/nuxt4 |
@tsparticles/preact | demo/preact |
@tsparticles/qwik | demo/qwik |
@tsparticles/react | demo/react |
@tsparticles/riot | demo/riot |
@tsparticles/solid | demo/solid |
@tsparticles/svelte | demo/svelte, demo/svelte-kit |
@tsparticles/vue2 | demo/vue2 |
@tsparticles/vue3 | demo/vue3 |
@tsparticles/webcomponents | demo/webcomponents |
@tsparticles/wordpress | не применимо (нужна полноценная установка WordPress) |
angular-confetti | demo/angular |
angular-fireworks | demo/angular |
Минимальные паттерны
Provider в стиле React / Next.js
import Particles, { ParticlesProvider } from "@tsparticles/react";
import type { Engine } from "@tsparticles/engine";
import { loadSlim } from "@tsparticles/slim";
const init = async (engine: Engine): Promise<void> => {
await loadSlim(engine);
};
export function Background() {
return (
<ParticlesProvider init={init}>
<Particles id="tsparticles" options={{ particles: { move: { enable: true } } }} />
</ParticlesProvider>
);
}Функция регистрации в стиле Vue / Nuxt
import type { Engine } from "@tsparticles/engine";
export async function registerParticles(engine: Engine): Promise<void> {
const [{ loadSlim }] = await Promise.all([import("@tsparticles/slim")]);
await loadSlim(engine);
}Однократная инициализация в Angular
import { NgParticlesService } from "@tsparticles/angular";
import { loadSlim } from "@tsparticles/slim";
constructor(private readonly particlesService: NgParticlesService) {}
ngOnInit(): void {
void this.particlesService.init(async engine => {
await loadSlim(engine);
});
}