Документация

Освой TicketsX быстрее

Инструкции по настройке, полный справочник команд, Premium-функции и REST API в одном месте.

14.3

Сниппеты для фреймворков

Виджет — это один тег script, поэтому он влезает куда угодно. Вот точный вид для трёх самых частых связок. Замени wk_your_key_here на ключ с карточки виджета.

HTML

<script src="https://api.ticketsx.xyz/widget.js" data-key="wk_your_key_here" defer></script>

React

import { useEffect } from 'react'

export function TicketsXChat() {
  useEffect(() => {
    const script = document.createElement('script')
    script.src = 'https://api.ticketsx.xyz/widget.js'
    script.dataset.key = 'wk_your_key_here'
    script.defer = true
    document.body.appendChild(script)

    return () => {
      script.remove()
      window.TicketsXChat?.destroy()
    }
  }, [])

  return null
}

Отрисуй этот компонент один раз, рядом с корнем приложения. Очистка убирает скрипт и выключает виджет, когда компонент размонтируется.

Next.js

import Script from 'next/script'

export default function RootLayout({ children }) {
  return (
    <html lang="en">
      <body>
        {children}
        <Script
          src="https://api.ticketsx.xyz/widget.js"
          data-key="wk_your_key_here"
          strategy="afterInteractive"
        />
      </body>
    </html>
  )
}

Это app router. Положи тег Script в корневой layout, чтобы виджет переживал переходы между страницами.

Что бы ты ни выбрал, скрипт один и тот же. Виджет рисуется в shadow root, так что он не трогает ни твои стили, ни бандл.