mirror of
https://github.com/zhw2590582/ArtPlayer.git
synced 2026-10-10 21:06:15 -08:00
refactor(vtt-thumbnail): [PKG-VTT-THUMB-03] own pending requests and preview resources
This commit is contained in:
1 parent
05244d1104
commit
524ddf784f
23 files changed
+3045
-262
No files matched your search
@@ -0,0 +1,32 @@
|
||||
# PKG-VTT-THUMB-03 资源所有权检查点
|
||||
|
||||
将注册、请求、纯解析、预览/计时器和生命周期拆开;保留旧 getVttArray 源路径的包装函数。
|
||||
这是 03 的源码检查点,**任务继续 doing**:解析错误/输入规则及更多资源边界尚需完成,
|
||||
严格 TS/公开声明归 04,完整核心设备/安装/demo/编辑器验收归 05/06。
|
||||
|
||||
## 已实现修复
|
||||
|
||||
- 请求前订阅 destroy;原生 AbortController 可用时取消 fetch/body。即使 fetch 忽略 signal
|
||||
或环境没有 AbortController,销毁也结算注册 Promise,迟到返回不安装控件,迟到拒绝被观察。
|
||||
- setBar、移动隐藏计时器和控件均有独立清理。计时器 ID 0 有效,旧定时回调有代次检查,
|
||||
在 setTimeout 返回之前重入销毁时仍清掉迟到的 handle。
|
||||
- 每次样式写入检查关闭状态;销毁中重入不会再排计时器或后续写入。
|
||||
- 安装失败保留原错误并回滚已安装监听器/控件。清理失败只记录警告,继续其它清理。
|
||||
控件只在实时 alias 仍为本次 mounted 元素时移除,不误删别人替换的控件。
|
||||
- HTTP 失败现在明确拒绝,不再解析错误响应体。这是单独复现的缺陷修正。
|
||||
|
||||
## 保持的边界
|
||||
|
||||
工厂/结果名、异步注册、URL/style 读取顺序、style 原对象、控件名/CSS/index、向下取整
|
||||
时间区间及首个命中、xywh/URL 几何、500ms 移动隐藏均保留。restart 不触发新增下载。
|
||||
源码抽出的 parseVtt 保持原算法;非法 cue/坐标、NOTE/ID 等仍不能称已修复。
|
||||
旧版 CJS `.default` 与同步声明冲突仍待 04,不能以当前直接函数入口代替所有旧消费形式。
|
||||
|
||||
## 验证与交接
|
||||
|
||||
21 项候选回归在冻结旧版 4 通过/17 失败,新源码通过;保留 01/02 历史测试。
|
||||
真实浏览器检查覆盖 published/candidate 核心、鼠标悬停、实际 sprite 像素和原生请求取消。
|
||||
准确构建、源码/产物/浏览器与 CI 结果见 [验证记录](../baselines/vtt-thumbnail-resources.json)。
|
||||
包内 ARCHITECTURE.md 说明实际文件地图和资源数据流。无依赖、版本或公开声明变更。
|
||||
按仓库命令生成 dist/docs 编译产物,不手改。回退本检查点提交可回到 02 后生产实现;
|
||||
历史对照仍可重跑。独立本地提交,不推送、不发布。
|
||||
Reference in new issue
Block a user