Files
zyt/wx/TUICallKit/src/Components/hooks/usePlayer.ts
T
2026-03-04 15:32:30 +08:00

33 lines
782 B
TypeScript

import { ref, onMounted, onUnmounted } from '../../adapter-vue';
import { TUIStore } from '../../TUICallService';
import { NAME, StoreName } from '../../TUICallService/const';
export function usePlayer() {
const player = ref(TUIStore.getData(StoreName.CALL, NAME.PLAYER));
const handlePlayerChange = (value) => {
player.value = value?.map((item) => {
const { userID, hasVideo, hasAudio } = item;
return { userID, hasVideo, hasAudio };
});
};
const watchOptions = {
[NAME.PLAYER]: handlePlayerChange,
};
onMounted(() => {
TUIStore.watch(
StoreName.CALL,
watchOptions,
{ notifyRangeWhenWatch: NAME.MYSELF },
);
});
onUnmounted(() => {
TUIStore.unwatch(StoreName.CALL, watchOptions);
});
return player;
}