說明文件

更快上手 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 標籤放進根佈局,小工具就能在頁面切換後繼續存在。

無論用哪種方式,載入的都是同一個腳本。小工具在 shadow root 裡渲染,不會碰你的樣式,也不會進你的打包產物。