Files
JKVideo/store/miniExclusion.ts

31 lines
958 B
TypeScript
Raw Normal View History

2026-05-12 20:27:30 +08:00
/**
* MiniPlayer LiveMiniPlayer
* zustand subscribe store import
* Metro / TS
*
* app import _layout.tsx
*/
import { useVideoStore } from './videoStore';
import { useLiveStore } from './liveStore';
let initialized = false;
export function initMiniExclusion() {
if (initialized) return;
initialized = true;
// 视频 mini 激活 → 清掉直播 mini
useVideoStore.subscribe((state, prev) => {
if (state.isActive && !prev.isActive && useLiveStore.getState().isActive) {
useLiveStore.getState().clearLive();
}
});
// 直播 mini 激活 → 清掉视频 mini
useLiveStore.subscribe((state, prev) => {
if (state.isActive && !prev.isActive && useVideoStore.getState().isActive) {
useVideoStore.getState().clearVideo();
}
});
}