mirror of
https://gh-proxy.org/https://github.com/tiajinsha/JKVideo
synced 2026-07-09 07:46:05 +08:00
fix: 修复小窗闭包过期、详情页 loading 卡死、视频播放器性能问题
- 小窗 PanResponder 用 storeRef 替代闭包捕获,修复 roomId/bvid 始终为初始值 - useLiveDetail 用 ref 比对替代 cancelled 标志,防止 fetch 被意外取消 - 详情页 useLayoutEffect 同步清除小窗,BigVideoCard 小窗活跃时跳过播放 - 视频播放器竖屏/全屏互斥渲染,减半解码器占用 - onProgress 节流 + 退出全屏强制恢复播放
This commit is contained in:
@@ -222,7 +222,7 @@ export default function DanmakuList({
|
||||
{ opacity: item._fadeAnim, borderBottomColor: theme.border },
|
||||
]}
|
||||
>
|
||||
{timeStr ? <Text style={liveStyles.time}>{timeStr}</Text> : null}
|
||||
{timeStr ? <Text style={liveStyles.time}>{timeStr}</Text> : null}
|
||||
<View style={liveStyles.msgBody}>
|
||||
{guard && (
|
||||
<View
|
||||
@@ -242,7 +242,9 @@ export default function DanmakuList({
|
||||
<View style={liveStyles.medalTag}>
|
||||
<Text style={liveStyles.medalName}>{item.medalName}</Text>
|
||||
<View style={liveStyles.medalLvBox}>
|
||||
<Text style={liveStyles.medalLv}>{item.medalLevel}</Text>
|
||||
<Text style={[liveStyles.medalLv, { color: theme.text }]}>
|
||||
{item.medalLevel}
|
||||
</Text>
|
||||
</View>
|
||||
</View>
|
||||
)}
|
||||
@@ -257,7 +259,6 @@ export default function DanmakuList({
|
||||
{item.text}
|
||||
</Text>
|
||||
</View>
|
||||
|
||||
</Animated.View>
|
||||
);
|
||||
},
|
||||
@@ -451,7 +452,7 @@ const liveStyles = StyleSheet.create({
|
||||
row: {
|
||||
flexDirection: "row",
|
||||
alignItems: "flex-start",
|
||||
justifyContent:"space-between",
|
||||
justifyContent: "space-between",
|
||||
paddingVertical: 5,
|
||||
},
|
||||
time: {
|
||||
|
||||
Reference in New Issue
Block a user