Files
kefu_cloud/web/src/pages/WidgetEmbed.tsx
T
yml2213 81852e0ddd 访客落地页、在线读秒与浏览轨迹
记录进线页面与换页路径,心跳刷新活跃时间;工作台展示落地页/当前页/轨迹时间线与在线时长,嵌入脚本同步宿主 SPA 路由。
2026-07-18 22:19:50 +08:00

30 lines
907 B
TypeScript

import { useMemo } from 'react'
import { useSearchParams } from 'react-router-dom'
import VisitorChat from '@/widgets/VisitorChat'
/** 供 widget.js iframe 嵌入的无边框页面 */
const WidgetEmbed = () => {
const [params] = useSearchParams()
const channelKey = useMemo(() => params.get('channel_key') || 'WK_8a3f2e', [params])
const embedded = params.get('embedded') === '1'
const initialPage = useMemo(() => ({
url: params.get('page_url') || undefined,
title: params.get('page_title') || undefined,
referrer: params.get('referrer') || undefined,
}), [params])
return (
<div className="h-screen w-screen overflow-hidden bg-transparent">
<VisitorChat
defaultOpen
channelKey={channelKey}
embedded={embedded}
layout={embedded ? 'fill' : 'floating'}
initialPage={initialPage}
/>
</div>
)
}
export default WidgetEmbed