useScreening.ts 754 B

123456789101112131415161718192021222324252627282930
  1. import { MutationTypes, useStore } from '@/store'
  2. import { enterFullscreen, exitFullscreen, isFullscreen } from '@/utils/fullscreen'
  3. export default () => {
  4. const store = useStore()
  5. // 进入放映状态(从当前页开始)
  6. const enterScreening = () => {
  7. enterFullscreen()
  8. store.commit(MutationTypes.SET_SCREENING, true)
  9. }
  10. // 进入放映状态(从第一页开始)
  11. const enterScreeningFromStart = () => {
  12. store.commit(MutationTypes.UPDATE_SLIDE_INDEX, 0)
  13. enterScreening()
  14. }
  15. // 退出放映状态
  16. const exitScreening = () => {
  17. store.commit(MutationTypes.SET_SCREENING, false)
  18. if (isFullscreen()) exitFullscreen()
  19. }
  20. return {
  21. enterScreening,
  22. enterScreeningFromStart,
  23. exitScreening,
  24. }
  25. }