mirror of
https://github.com/truewhile/MeBox.git
synced 2026-10-07 22:06:38 +08:00
优化
优化
This commit is contained in:
@@ -128,6 +128,9 @@ export function DanmakuStage({
|
|||||||
|
|
||||||
const loadDanmaku = async () => {
|
const loadDanmaku = async () => {
|
||||||
let loadedInfo: DanmakuLoadedInfo | null = null
|
let loadedInfo: DanmakuLoadedInfo | null = null
|
||||||
|
comments = []
|
||||||
|
nextIndex = 0
|
||||||
|
manager.clear()
|
||||||
try {
|
try {
|
||||||
const res = await danmakuAPI.fetch(media.id, {
|
const res = await danmakuAPI.fetch(media.id, {
|
||||||
kw: search ?? undefined,
|
kw: search ?? undefined,
|
||||||
|
|||||||
@@ -168,6 +168,17 @@ export function PlayerPage() {
|
|||||||
setDanmakuInfo(null)
|
setDanmakuInfo(null)
|
||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
|
// 切换视频时重置媒体与弹幕状态,确保新视频自动重新识别并加载弹幕
|
||||||
|
useEffect(() => {
|
||||||
|
setMedia(null)
|
||||||
|
setDanmakuEpisodeId(null)
|
||||||
|
setDanmakuCandidates([])
|
||||||
|
setDanmakuSearch(null)
|
||||||
|
setDanmakuSelectedSource('')
|
||||||
|
setDanmakuInfo(null)
|
||||||
|
setDanmakuSearching(true)
|
||||||
|
}, [id])
|
||||||
|
|
||||||
// Load metadata and pick a default mode.
|
// Load metadata and pick a default mode.
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (!id) return
|
if (!id) return
|
||||||
|
|||||||
@@ -249,6 +249,7 @@ export function PlayerVideoStage({
|
|||||||
))}
|
))}
|
||||||
</video>
|
</video>
|
||||||
<DanmakuStage
|
<DanmakuStage
|
||||||
|
key={media.id}
|
||||||
media={media}
|
media={media}
|
||||||
videoRef={videoRef}
|
videoRef={videoRef}
|
||||||
enabled={danmakuEnabled}
|
enabled={danmakuEnabled}
|
||||||
|
|||||||
Reference in New Issue
Block a user