Skip to content

Barrage 弹幕 - Vant 4

Barrage 弹幕

💬 介绍

弹幕组件让你的应用瞬间充满活力!实现观看视频时弹出的评论性字幕功能,为用户带来沉浸式的互动体验。请升级 vant 到 >= 4.4.0 版本来使用该组件。

📦 引入

通过以下方式来全局注册组件,更多注册方式请参考组件注册

js
import { createApp } from'vue'; import { Barrage } from'vant'; const app = createApp(); app.use(Barrage);

🎯 代码演示

基础用法

可以通过 v-model 双向绑定弹幕数据,Barrage 会在组件区域内播放文字弹幕,使用数组数据 push() 可以发送弹幕文字。简单易用,效果炫酷!

html
ts
exportdefault { setup() { const defaultList = [ { id: 100, text: '轻量' }, { id: 101, text: '可定制的' }, { id: 102, text: '移动端' }, { id: 103, text: 'Vue' }, { id: 104, text: '组件库' }, { id: 105, text: 'VantUI' }, { id: 106, text: '666' }, ]; const list = ref([...defaultList]); constadd = () => { list.value.push({ id: Math.random(), text: 'Barrage' }); }; return { list, add }; }, };

模拟视频弹幕

设置 auto-playfalse 属性后,需要使用 play() 进行弹幕播放,暂停可以使用 pause() 实现。完美配合视频播放,打造真实弹幕体验!

html
ts
exportdefault { setup() { const defaultList = [ { id: 100, text: '轻量' }, { id: 101, text: '可定制的' }, { id: 102, text: '移动端' }, { id: 103, text: 'Vue' }, { id: 104, text: '组件库' }, { id: 105, text: 'VantUI' }, { id: 106, text: '666' }, ]; const list = ref([...defaultList]); const barrage = ref<BarrageInstance>(); constadd = () => { list.value.push({ id: Math.random(), text: 'Barrage' }); }; const [isPlay, toggle] = useToggle(false); watch(isPlay, () => { if (isPlay.value) barrage.value?.play(); else barrage.value?.pause(); }); return { list, barrage, isPlay, toggle, add }; }, };

API

Props

参数说明类型默认值
v-model弹幕数据BarrageItem[]-
auto-play是否自动播放弹幕booleantrue
rows弹幕文字行数*numberstring*
top弹幕文字区域顶部间距,单位 px*numberstring*
duration弹幕文字滑过容器的时间,单位 ms*numberstring*
delay弹幕动画延时,单位 msnumber300

方法

通过 ref 可以获取到 Barrage 实例并调用实例方法,详见组件实例方法

方法名说明参数返回值
play播放弹幕--
pause暂停弹幕--

Slots

名称说明
default弹幕组件子元素

类型定义

组件导出以下类型定义:

ts
importtype { BarrageProps, BarrageItem, BarrageInstance } from'vant';

主题定制

样式变量

组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件

名称默认值描述
--van-barrage-font-size16px-
--van-barrage-space10px-
--van-barrage-colorvar(--van-white)-
--van-barrage-fontinherit-

📝 总结

Barrage 弹幕组件是为你的应用注入活力的神奇工具!💬 它能让静态的内容瞬间变得生动有趣,为用户带来沉浸式的互动体验。无论是视频播放、直播互动还是活动展示,都能让你的应用更加引人入胜。

🎯 核心特性

  • 🎬 视频同步:完美配合视频播放控制
  • 🎨 灵活配置:支持行数、速度、延时等多种参数
  • 🎭 动态添加:实时推送新弹幕内容
  • 📱 移动优化:专为移动端体验设计
  • 🎪 流畅动画:丝滑的弹幕滚动效果
  • 🎮 播放控制:支持播放、暂停等操作

从视频网站到直播平台,从活动页面到互动展示,Barrage 让你的应用充满生机与活力!

🔗 相关内容

基于Vant构建的企业级移动端解决方案