# Audio音频拖拽播放组件
要开发一个音频可播放可拖拽进度的组件
音频无法拖拽
需要设置HTTP Headers
content-type: audio/mpeg
Content-Length: 12004029
Content-Range: bytes 0-12004028/12004029
Accept-Ranges: bytes
1
2
3
4
2
3
4
audio元素设置了src后,浏览器不会一次性下载整个音频文件,而是会进行流式下载(即按需下载)。这是浏览器的默认行为,用于优化网络带宽和用户体验。
如果你希望强制浏览器预加载更多的音频内容,可以使用 preload 属性。preload 属性可以设置为以下值:
none:不预加载。metadata:仅预加载元数据(默认)。auto:尽可能多地预加载整个文件。
<audio
@timeupdate="handleTimeUpdate"
@play="handleAudioPlay"
@pause="handleAudioPause"
controls
:src="audioSrc"
preload="auto"
></audio>
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
即使你设置了 preload="auto",浏览器仍然可能不会一次性下载整个音频文件,因为最终的下载策略由浏览器决定。
# Audio音频播放
audio元素默认不可见,需要添加 controls 属性才会显示播放控件。