vue 中实现音视频播放进度条(可拖拽,满足常见开发需求)
由于开发需要,作者封装了一个音视频播放进度条的组件,支持 vue2 及 vue3 ,有需要的朋友后台私信作者获取组件源码哦(工作日每天都在线),下面是对该款组件的介绍。
组件默认样式👇(组件提供了多个配置选项,可根据自身需求进行个性化配置,详情请往下看)

效果演示(只展示部分,更多效果请往下看👇):





目录
- 一、介绍
- 1、用法概述
- 2、模式
- 二、使用
- 1、基础配置
- 1.1、模式(必传)
- 1.2、是否播放
- 1.3、播放开始的时间(必传)
- 1.4、播放倍速
- 1.5、禁用进度条
- 1.6、是否显示最左侧当前播放时间文本
- 1.7、是否显示播放暂停及启动按钮
- 1.8、是否显示倍速选择器
- 1.9、是否显示进度条提示
- 2、样式配置
- 2.1、组件的宽高设置
- 2.2、进度条中端点样式配置
- 2.3、进度条背景色
- 2.4、开始暂停按钮
- 2.5、进度条提示框出现位置
- 2.6、组件背景色
- 3、特殊配置
- 3.1、连续播放模式:
- 3.1.1、播放总时长(必传,非连续播放模式下请勿传递)
- 3.2、非连续播放模式
- 3.2.1、播放数据(必传)
- 3.2.2、进度条的开始及结束时间(必传)
- 3.2.3、跨度时间
- 3.2.4、进度条中的标识样式
- 3.2.5、是否显示刻度
- 3.2.6、刻度间隔时间
- 3.2.7、时间格式(左侧提示时间、刻度时间、进度条提示时间)
- 4、传出的进度条数据
- 4.1、进度条当前播放进度的时间
- 4.2、拖动进度条时触发的回调
- 4.3、拖动进度条后触发的回调
- 5、配置参数总结
- 基础配置
- 样式配置
- 特殊配置
- 连续播放模式:
- 非连续播放模式:
- 组件传出数据
- 6、用法示例
- 三、总结
一、介绍
该款组件可作为音频、视频播放的进度条,用于控制音频、视频的播放(播放进度、暂停开始、播放倍速、自定义刻度 等)。同时,组件提供了多方面的配置选项,使用者可以通过个性化配置来达到自己想要的效果(下面会对配置项进行详解),拓展性极高。
1、用法概述
在播放的过程中组件会返回当前播放的播放信息(如当前播放到的秒(进度)、进度条被拖拽时的回调、进度条拖拽后的回调等),根据这些返回信息,我们拿到后根据实际的需求来做不同处理就可以实现控制播放的效果。
2、模式
组件分为两种模式: 连续播放模式 及 非连续播放模式
❓ 连续和非连续分别表示什么意思呢 ❓
连续与非连续指的是播放是否是连续的。比如我们平时常见的音频、视频的播放是以秒作为单位,逐秒进行播放的,这就是连续播放。而非连续播放出现的情况可能比较少,指的是根据传入组件的数据,有数据的时间节点则进行播放,如果下一个数据的时间节点与当前数据时间节点间隔超过指定秒,则直接跳到下一个有数据的时间节点,若间隔不超过指定秒数则逐秒播放至下一数据时间节点,这样跳着播放的就是非连续播放。(有不懂的可联系作者)
二、使用
接下来对组件的 配置项 以及 能够获取到的进度条信息 进行详细说明:
1、基础配置
1.1、模式(必传)
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| type | String | continuous | 上面介绍中说到组件分为连续播放和非连续播放两种模式 (连续播放:continuous,非连续播放:discontinuous ) |
连续播放演示:

非连续播放演示:

1.2、是否播放
关于播放倍速有以下两个参数:
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| isActivate | Boolean | true | 通过该参数可以控制播放的开始与暂停,初始值赋值为 true 则默认播放 |
演示(以连续播放为例,非连续播放效果相同):

1.3、播放开始的时间(必传)
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| scheduleStartTime | Number | 0 | 连续播放模式下传入播放开始的秒数,非连续播放模式传入播放开始的毫秒时间戳 |
//连续播放模式
const scheduleStartTime = 10 //表示从第10秒开始播放//非连续播放模式
const scheduleStartTime = 1679988534000 //1679988534000是一个毫秒时间戳,表示从1679988534000这个时间点开始播放
1.4、播放倍速
关于播放倍速有以下两个参数:
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| multipleList | Array | [64,32,16,8,4,2,1] | 提供的倍速选项,默认提供默认值中的播放倍速选项 |
| multiple | Number | 1 | 当前的播放倍速,默认为1倍速 |
演示(以连续播放为例,非连续播放效果相同):

1.5、禁用进度条
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| disabled | Boolean | false | true 禁用,false 启用 |
演示(以连续播放为例,非连续播放效果相同):

1.6、是否显示最左侧当前播放时间文本
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| showTimeText | Boolean | true | true 显示,false 隐藏 |
演示(以连续播放为例,非连续播放效果相同):

1.7、是否显示播放暂停及启动按钮
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| showPlayBtn | Boolean | true | true 显示,false 隐藏 |
演示(以连续播放为例,非连续播放效果相同):

1.8、是否显示倍速选择器
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| showMultiple | Boolean | true | true 显示,false 隐藏 |
演示(以连续播放为例,非连续播放效果相同):

1.9、是否显示进度条提示
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| showTooltip | Boolean | true | true 显示,false 隐藏 |
演示(以连续播放为例,非连续播放效果相同):

2、样式配置
2.1、组件的宽高设置
需要设置了宽度组件才会显示,组件的宽度100%自适应包裹它的元素,通过修改其父元素的宽高来设置其宽度,组件自带高度不需要设置其高度,代码如下:
<div style="width:100%;"><ProgressBar :type="type":dataList="dataList":startTimestamp="startTimestamp":endTimestamp="endTimestamp"...@afterInput="afterInput" @afterChange="afterChange"@getCurrentProgress="getCurrentProgress"></ProgressBar></div>
2.2、进度条中端点样式配置

| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| schedulePointConfig | Object | {width: ‘20px’,height: ‘20px’ } | 设置端点的样式 |
可配置的属性有:
| 属性 | 类型 | 描述 | 例子 |
|---|---|---|---|
| width | String | 宽度 | 15px |
| height | String | 高度 | 15px |
| borderColor | String | 边框颜色 | red |
| borderWidth | String | 边框宽度 | 2px |
| borderRadius | String | 边框弧度 | 10% |
| bgColor | String | 背景色 | red |
| bgImgUrl | String | 背景图片 | https://…png |
演示(以连续播放为例,非连续播放效果相同):

实现上方效果,schedulePointConfig 的配置为(可供参考):
import testImg from './assets/images/test_img.png'const schedulePointConfig = {width: '30px',height: '30px',bgImgUrl: testImg,borderColor: 'transparent',bgColor:'transparent',borderRadius: '0px'
}
2.3、进度条背景色
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| progressBarColor | String | #409eff | 设置进度条背景色 |
演示(以连续播放为例,非连续播放效果相同):

2.4、开始暂停按钮
开始暂停按钮可替换替换图片和设置大小,其它样式未提供配置,如有其他需求可隐藏自带按钮,根据自身需求个性化实现,组件提供控制播放开始及暂停的配置参数。
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| activateImgUrl | String | – | 开始按钮 |
| stopImgUrl | String | – | 暂停按钮 |
| startStopBtnConfig | Object | {width: ‘15px’,height: ‘15px’,} | 样式配置,只提供宽高的配置 |
注意: 这里的图片并不像上文进度条端点可以使用本地图片,只能使用线上地址图片。
演示(以连续播放为例,非连续播放效果相同):

2.5、进度条提示框出现位置
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| placement | String | top | (vue2版本不能使用) 可选值有:‘top’ / ‘top-start’ / ‘top-end’ / ‘bottom’ / ‘bottom-start’ / ‘bottom-end’ / ‘left’ / ‘left-start’ / ‘left-end’ |
演示(以连续播放为例,非连续播放效果相同):

2.6、组件背景色
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| scheduleBgColor | String | transparent | 设置组件背景色 |
演示(以连续播放为例,非连续播放效果相同):

3、特殊配置
特殊配置指的是区分模式的一些配置。
3.1、连续播放模式:
3.1.1、播放总时长(必传,非连续播放模式下请勿传递)
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| max | Number | 0(单位:秒) | 连续播放模式下播放的总时长 |
3.2、非连续播放模式
3.2.1、播放数据(必传)
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| dataList | Array | [] | 非连续播放的播放数据 (传入数据时间必须从小到大进行排序) |
数据格式为:
let dataList = [{loc:{time: 1679981334000},alarm:{text:'我是标识1',style:{'color': 'red'}}},{loc:{time: 1679988534000},},{loc:{time: 1679992134000},alarm:{text:'我是标识2',style:{'color': 'red'}}},{loc:{time: 1679995734000},},{loc:{time: 1679998434000},},
]
结构说明: dataList 中的每一个元素表示一个有数据的时间节点,在播放的过程中会对这些点进行播放,两点间的时间间隔如果超过指定的跨度时间(跨度时间配置说明在下方 3.2.3 )则直接跳到下一个节点进行播放,如果不超过跨度时间则逐秒播放到下一个时间节点。loc 中的 time 属性就是该数据所处时间,而 alarm 表示该事件节点是否需要进行标注,存在 alarm 属性的节点会在进度条中进行标注。alarm 中的 text 表示标注的文本,通过 style 中的属性可以配置 text 文本的样式。
演示(该演示所使用数据就是上方的数据格式中的数据):

3.2.2、进度条的开始及结束时间(必传)
| 参数 | 类型 | 描述 |
|---|---|---|
| startTimestamp | Number(毫秒时间戳,如:1679980393000) | 进度条开始时间 |
| endTimestamp | Number(毫秒时间戳,如:1679998698000) | 进度条结束时间 |
演示:
3.2.3、跨度时间
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| spanTime | Number | 30(单位:秒) | 两个节点如果间隔时间超过该跨度时间则直接跳转到下一节点,如果不大于该跨度时间则逐秒播放到下一个时间节点 |
3.2.4、进度条中的标识样式
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| marksConfig | Object | {color: ‘#e8405e’, width: ‘3px’} | width:宽度(String),color:颜色(String) |
演示:

3.2.5、是否显示刻度
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| showScale | Boolean | false | true:显示,false:隐藏 |
演示:

3.2.6、刻度间隔时间
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| scaleIntervalTime | Number | 30(单位:分钟,当刻度时间格式(scaleTextFormat)属性设置为 m:s 格式时单位自动变为秒) | 刻度的间隔时间 |
3.2.7、时间格式(左侧提示时间、刻度时间、进度条提示时间)

| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| timeTipFormat | String | h:m | 设置左侧时间的格式 |
| scaleTextFormat | String | h:m | 设置刻度时间的格式 |
| tooltipFormat | String | h:m | 设置进度条提示时间的格式 |
能够设置的时间格式有(Y:年,M:月,D:日,h:时,m:分,s:秒):
h:m | Y-M-D h:m:s | M-D h:m:s | M-D h:m | Y-M-D |
Y/M/D h:m:s | M/D h:m:s | M/D h:m | Y/M/D | h:m:s | m:s(特殊)
注意: 当 scaleTextFormat 设置为 m:s 时,scaleIntervalTime(刻度间隔时间)属性的单位就会变为秒
4、传出的进度条数据
组件中传出的数据及钩子函数,通过传出的数据可以对外部的音视频播放进行控制。通过传出的钩子函数可以在相应的时机做自身需要的处理。
4.1、进度条当前播放进度的时间
| 函数 | 参数 | 描述 |
|---|---|---|
| getCurrentProgress | nowTime(当前的进度时间,连续播放模式下返回进度的秒,非连续播放模式下返回进度的毫秒时间戳) | 函数用户获取当前的播放进度 |
演示:
- 连续播放模式:

- 非连续播放模式:

4.2、拖动进度条时触发的回调
| 函数 | 参数 | 描述 |
|---|---|---|
| afterInput | value(Number类型,当前拖动到的进度) | 拖拽时触发 |
4.3、拖动进度条后触发的回调
| 函数 | 参数 | 描述 |
|---|---|---|
| afterChange | value(Number类型,当前拖动到的进度) | 拖拽后或者点击进度条某个点时触发 |
5、配置参数总结
基础配置
| 参数 | 类型 | 默认值 | 描述 | 是否必传 |
|---|---|---|---|---|
| type | String | continuous | 上面介绍中说到组件分为连续播放和非连续播放两种模式(连续播放:continuous,非连续播放:discontinuous ) | 是 |
| isActivate | Boolean | true | 通过该参数可以控制播放的开始与暂停,初始值赋值为 true 则默认播放 | 否 |
| scheduleStartTime | Number | 0 | 连续播放模式下传入播放开始的秒数,非连续播放模式传入播放开始的毫秒时间戳 | 是 |
| multipleList | Array | [64,32,16,8,4,2,1] | 提供的倍速选项,默认提供默认值中的播放倍速选项 | 否 |
| multiple | Number | 1 | 当前的播放倍速,默认为1倍速 | 否 |
| disabled | Boolean | false | true 禁用,false 启用 | 否 |
| showTimeText | Boolean | true | true 显示,false 隐藏 | 否 |
| showPlayBtn | Boolean | true | true 显示,false 隐藏 | 否 |
| showMultiple | Boolean | true | true 显示,false 隐藏 | 否 |
| showTooltip | Boolean | true | true 显示,false 隐藏 | 否 |
样式配置
| 参数 | 类型 | 默认值 | 描述 | 是否必传 |
|---|---|---|---|---|
| schedulePointConfig | Object | {width: ‘20px’,height: ‘20px’ } | 设置端点的样式 | 否 |
| progressBarColor | String | #409eff | 设置进度条背景色 | 否 |
| activateImgUrl | String | – | 开始按钮 | 否 |
| stopImgUrl | String | – | 暂停按钮 | 否 |
| startStopBtnConfig | Object | {width: ‘15px’,height: ‘15px’,} | 设置开始暂停按钮样式 | 否 |
| placement | String | top | 设置进度条提示的出现位置 | 否 |
| scheduleBgColor | String | transparent | 设置组件背景色 | 否 |
特殊配置
连续播放模式:
| 参数 | 类型 | 默认值 | 描述 | 是否必传 |
|---|---|---|---|---|
| max | Number | 0(单位:秒) | 连续播放模式下播放的总时长,非连续播放模式下请勿传递 | 是 |
非连续播放模式:
| 参数 | 类型 | 默认值 | 描述 | 是否必传 |
|---|---|---|---|---|
| dataList | Array | [] | 非连续播放的播放数据 (传入数据时间必须从小到大进行排序) | 是 |
| startTimestamp | Number(毫秒时间戳,如:1679980393000) | – | 进度条开始时间 | 是 |
| endTimestamp | Number(毫秒时间戳,如:1679998698000) | – | 进度条结束时间 | 是 |
| spanTime | Number | 30(单位:秒) | 跨度时间 | 否 |
| marksConfig | Object | {color: ‘#e8405e’, width: ‘3px’} | 设置进度条中标注样式 | 否 |
| showScale | Boolean | false | 是否显示刻度 | 否 |
| scaleIntervalTime | Number | 30(单位:分钟,当刻度时间格式(scaleTextFormat)属性设置为 m:s 格式时单位自动变为秒) | 刻度的间隔时间 | 否 |
| timeTipFormat | String | h:m | 设置左侧时间的格式 | 否 |
| scaleTextFormat | String | h:m | 设置刻度时间的格式 | 否 |
| tooltipFormat | String | h:m | 设置进度条提示时间的格式 | 否 |
组件传出数据
| 函数 | 参数 | 描述 |
|---|---|---|
| getCurrentProgress | nowTime(当前的进度时间,连续播放模式下返回进度的秒,非连续播放模式下返回进度的毫秒时间戳) | 函数用户获取当前的播放进度 |
| afterInput | value(Number类型,当前拖动到的进度) | 拖拽时触发 |
| afterChange | value(Number类型,当前拖动到的进度) | 拖拽后或者点击进度条某个点时触发 |
6、用法示例
<ProgressBar :type="discontinuous":isActivate="isActivate" @getCurrentProgress=getCurrentProgress...
></ProgressBar>
三、总结
组件包含了日常常见的进度条需求,基本能满足大部分进度条的使用环境。感兴趣的朋友可以后台私信作者获取组件(工作日每天都在线)。如有其他功能组件中未实现的,欢迎留言,作者会持续更新,感谢!
👇觉得有帮助的朋友可以支持下作者哦,您的鼓励是我创作的最大动力,如有开发问题可联系作者

相关文章:
vue 中实现音视频播放进度条(可拖拽,满足常见开发需求)
由于开发需要,作者封装了一个音视频播放进度条的组件,支持 vue2 及 vue3 ,有需要的朋友后台私信作者获取组件源码哦(工作日每天都在线),下面是对该款组件的介绍。 组件默认样式👇(组…...
[免费]SpringBoot+Vue企业OA自动化办公管理系统【论文+源码+SQL脚本】
大家好,我是java1234_小锋老师,看到一个不错的SpringBootVue企业OA自动化办公管理系统,分享下哈。 项目视频演示 【免费】SpringBootVue企业OA自动化办公管理系统 Java毕业设计_哔哩哔哩_bilibili 项目介绍 随着信息技术在管理上越来越深入…...
笔记:在WPF中BitmapSource都有哪些派生类,他们主要功能,使用方法,使用场景
一、目的:在WPF中BitmapSource都有哪些派生类,他们主要功能,使用方法,使用场景 BitmapSource 是 WPF 中图像处理的基类,提供了许多派生类来处理不同类型的图像源。以下是一些常见的 BitmapSource 派生类、它们的主要功…...
JAVA基础学习笔记_多线程
文章目录 多线程并发和并行多线程的实现方式Thread类实现Runnable接口方式实现callable接口和Future接口实现 常用的成员方法线程的生命周期线程的安全问题同步代码块同步方法lock锁死锁 生产者和消费者(等待唤醒机制)阻塞队列实现等待唤醒机制线程的6种状态线程池自定义线程池…...
什么是自动化办公
自动化办公是指使用技术工具或软件,通过预设流程或脚本,自动执行日常办公任务,从而提升效率、减少错误、节约时间的办公模式。它适用于需要重复性、规则明确的工作流程,让员工将精力集中在更具创造性和战略性的工作上。 自动化办公…...
数据库系统
数据库模式 3个阶段以及各自的产物: 1、需求分析(数据流图、数据字典、需求说明书); 2、概念结构设计(ER模型); 3、逻辑结构设计(关系模式)); 关…...
文件系统--底层架构(图文详解)
一、文件系统的底层存储与寻址 当我们谈到文件系统的底层结构时,最关键的问题是:文件的数据与元数据(属性)如何存储在磁盘上,以及系统是如何定位这些数据的?在谈及文件系统之前,我们要先对储存…...
【OCR】——端到端文字识别GOT-OCR2.0不香嘛?
代码:https://github.com/Ucas-HaoranWei/GOT-OCR2.0?tabreadme-ov-file 在线demo:https://huggingface.co/spaces/stepfun-ai/GOT_official_online_demo 0.前言 最早做ocr的时候,就在想如何能做一个端到端的模型,就不用先检测再…...
SkyWalking 和 ELK 链路追踪实战
一、背景 最近在给项目搭建日志平台的时候,采用的方案是 SkyWalking ELK 日志平台,但发现 ELK 日志平台中的日志没有 Trace ID,导致无法追踪代码报错的整体链路。 空哥提示:Trace ID 是分布式追踪中用来唯一标识一个服务请求或事…...
ETCD的封装和测试
etcd是存储键值数据的服务器 客户端通过长连接watch实时更新数据 场景: 当主机A给服务器存储 name: 小王 主机B从服务器中查name ,得到name-小王 当主机A更改name 小李 服务器实时通知主机B name 已经被更改成小李了。 应用:服务注册与发…...
基于大数据爬+数据可视化的民族服饰数据分析系统设计和实现(源码+论文+部署讲解等)
博主介绍:CSDN毕设辅导第一人、全网粉丝50W,csdn特邀作者、博客专家、腾讯云社区合作讲师、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌ 技术范围…...
torch.optim.lr_scheduler.ReduceLROnPlateau
torch.optim.lr_scheduler.ReduceLROnPlateau 是 PyTorch 中的一种学习率调度器,主要用于在模型训练过程中根据某些指标(如验证损失)动态调整学习率。它是一种基于性能指标动态调整学习率的策略,而不是预定义的固定时间调整。 主要…...
Linux 搭建ftp服务
FTP是什么? FTP(文件传输协议,File Transfer Protocol)是一种用于在计算机之间传输文件的网络协议。它基于客户端-服务器模型,允许用户从远程服务器上传、下载和管理文件。 FTP的主要作用 文件传输:FTP最基…...
阳光电源嵌入式面试题及参考答案
讲一讲声明变量的时候应该注意哪些内容。 在声明变量时,首先要考虑变量的类型。不同的数据类型有不同的用途和占用的存储空间大小。例如,基本数据类型如整型(int)通常占用 4 个字节,用来存储整数;而浮点型(float)用于存储带有小数部分的数字,占用 4 个字节,双精度浮点…...
PS的功能学习(形状、文字、图层)
关于图层 如果是在一个已经有其他图层的文档界面下,拉一张新图进来,就会自动转换成智能对象 注意,放大之后再栅格化,是会根据原本的防矢量图规则放大之后,再变回像素图层,这个变回来的像素图层是“在原像素…...
项目实例_FashionMNIST_CNN
前言 提醒: 文章内容为方便作者自己后日复习与查阅而进行的书写与发布,其中引用内容都会使用链接表明出处(如有侵权问题,请及时联系)。 其中内容多为一次书写,缺少检查与订正,如有问题或其他拓展…...
Ubuntu 安装 web 服务器
安装 apach sudo apt install apache2 -y 查看 apach2 版本号 apache2 -v 检查是否启动服务器 sudo service apache2 status 检查可用的 ufw 防火墙应用程序配置 sudo ufw app list 关闭防火墙 sudo ufw disable 更改允许通过端口流量 sudo ufw allow Apache Full 开启…...
burp的编解码,日志,比较器
声明! 学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关&a…...
2.1、模版语法
2.1.1、插值语法 1、代码示例 <body><!-- 准备容器 --><div id"app"><!-- 在data中声明的 --><!--1、 data中声明的变量 --><h1>{{msg}}</h1><h1>{{sayHello()}}</h1><!-- 不在data中的变量不可以 -->…...
最小二乘法拟合出二阶响应面近似模型
背景:根据样本试验数据拟合出二阶响应面近似模型(正交二次型),并使用决定系数R和调整的决定系数R_adj来判断二阶响应面模型的拟合精度。 1、样本数据(来源:硕士论文《航空发动机用W形金属密封环密封性能分析…...
大数据学习栈记——Neo4j的安装与使用
本文介绍图数据库Neofj的安装与使用,操作系统:Ubuntu24.04,Neofj版本:2025.04.0。 Apt安装 Neofj可以进行官网安装:Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...
Qt Widget类解析与代码注释
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...
Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
C++使用 new 来创建动态数组
问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...
短视频矩阵系统文案创作功能开发实践,定制化开发
在短视频行业迅猛发展的当下,企业和个人创作者为了扩大影响力、提升传播效果,纷纷采用短视频矩阵运营策略,同时管理多个平台、多个账号的内容发布。然而,频繁的文案创作需求让运营者疲于应对,如何高效产出高质量文案成…...
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...
Razor编程中@Html的方法使用大全
文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...
华为OD最新机试真题-数组组成的最小数字-OD统一考试(B卷)
题目描述 给定一个整型数组,请从该数组中选择3个元素 组成最小数字并输出 (如果数组长度小于3,则选择数组中所有元素来组成最小数字)。 输入描述 行用半角逗号分割的字符串记录的整型数组,0<数组长度<= 100,0<整数的取值范围<= 10000。 输出描述 由3个元素组成…...
Linux中《基础IO》详细介绍
目录 理解"文件"狭义理解广义理解文件操作的归类认知系统角度文件类别 回顾C文件接口打开文件写文件读文件稍作修改,实现简单cat命令 输出信息到显示器,你有哪些方法stdin & stdout & stderr打开文件的方式 系统⽂件I/O⼀种传递标志位…...
