SwAdBanner

廣告位四要素

  • 使用場景:頁面頂部 / 中部 / 頁尾 / 播放器周邊的橫幅位(slotKey 例 home_banner)
  • 業界形態:Banner / Leaderboard(AdSDK 格式 banner / bannerLarge)
  • 表現形態:全寬圖片,單圖直出 / 多圖自動輪播,可帶「廣告」角標
  • 打點事件:adImpression(IntersectionObserver 進入視窗一次)/ adClick;自動內建零組態,gate 關閉靜默 no-op

選錯場景 = 埋點 ad_type / 時機全錯。按場景選元件見 廣告元件選型。

SwAdBanner 是橫幅廣告位元件,屬於 framework 廣告底座的「圖片類」自渲染元件。傳入 items(後端廣告介面回傳的創意陣列)即自動渲染,內建 IntersectionObserver 曝光 + 點擊埋點(走 useAdTrack),業務零代碼。單圖直出、多圖自動輪播。

廣告位優先用 SwAd* 元件,不要自己寫廣告元件 + 手搓埋點。完整家族與埋點欄位見 廣告底座與打點。

基礎橫幅(單圖 + 廣告角標)

加载中...

Props

名稱類型必填預設值說明
itemsSwAdItem[]✓—廣告創意陣列(後端廣告介面回傳)
slotKeystring✓—廣告位鍵 → 埋點 ad_slot_key
slotNamestringundefined廣告位名 → ad_slot_name
pageKeystringundefined頁面鍵 → page_key
pageNamestringundefined頁面名 → page_name
ratiostringundefined寬高比(如 '640/200'),防 CLS。不傳時跟隨圖片比例
radiusnumber | string0圓角(number=px,string 原樣透傳 SwImage,如 '1.125rem')
showAdLabelbooleanundefined「廣告」合規角標;不傳時跟隨全域 swiftConfig.ad.showLabel(預設 true),顯式傳值始終優先
autoplaybooleantrue多圖時是否自動輪播
autoplayDelaynumber4000輪播間隔(ms)

items 的欄位(id / image / title / link / ratio / adType 等)見 SwAdItem 類型,統一定義見 廣告底座與打點。

Events

名稱攜帶說明
load—創意渲染完成
empty—items 為空 / 無可展示創意
impressionitems: SwAdItem[]廣告位進入視口曝光(自動埋點已上報,此事件供業務額外消費)
clickitem: SwAdItem點擊某條創意(自動埋點已上報)
error—渲染 / 載入錯誤

多圖自動輪播

傳入多條 items 時自動輪播,autoplayDelay 控制間隔;不需要輪播傳 :autoplay="false"。

多圖自動輪播

加载中...

單圖模式 + 角標 + 圓角

加载中...

事件總覽(load/impression/click)

加载中...

空資料 @empty(零渲染)

加载中...
<SwAdBanner
  :items="banners"
  slot-key="home_top_banner"
  page-key="home"
  ratio="640/200"
  :radius="8"
  :autoplay-delay="3000"
  show-ad-label
/>

注意事項

  • 不要手搓埋點 —— 曝光 / 點擊埋點已內建,業務無需自己接 IntersectionObserver 或呼叫 useTracker。
  • 傳 ratio 防 CLS —— 廣告圖未載入時用 ratio 佔位,避免版面跳動。
  • 上報受 tracker.enabled + system/info.tracker 雙重 gate,設定缺失時靜默不發(元件照常渲染)。