audioBg.js 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. // 全局音频背景播放状态管理模块
  2. const audioModules = {
  3. namespaced: true,
  4. state: {
  5. show: false, //是否显示音频弹窗
  6. list: [], //[{url:音频地址,time:音频时长,title:音频标题,}]
  7. activityId: 0, //当前是哪个报告的音频 活动的id
  8. reportId: 0, //文章的id
  9. indexId: 0, //素材库的id
  10. paused: true, //当前是否音频正在播放 true暂停状态
  11. curTime: 0, //当前正在播放的音频播放的时间
  12. activityTitle: "",
  13. multiple: 1, //倍数
  14. parseIntShow: false, //
  15. isDragSlide: false, //是否在拖动进度条
  16. isAudioEnded: false, //
  17. },
  18. mutations: {
  19. addAudio(state, payload) {
  20. state.show = true;
  21. state.list = payload.list;
  22. state.activityTitle = payload.activityTitle;
  23. state.activityId = payload.activityId || 0;
  24. state.reportId = payload.reportId || 0;
  25. state.indexId = payload.indexId || 0;
  26. },
  27. // 音频状态
  28. updateAudioPause(state, payload) {
  29. state.paused = payload;
  30. },
  31. setMultiple(state, payload) {
  32. state.multiple = payload;
  33. },
  34. // 更新音频播放进度
  35. updateAudioTime(state, payload) {
  36. state.curTime = Number(payload);
  37. },
  38. //删除当前音频播放
  39. removeAudio(state, payload) {
  40. state.show = false;
  41. state.list = [];
  42. state.activityId = 0;
  43. state.reportId = 0;
  44. state.indexId = 0
  45. state.curTime = 0;
  46. state.paused = true;
  47. },
  48. parseIntAudio(state, payload) {
  49. state.parseIntShow = payload;
  50. },
  51. setSlide(state, payload) {
  52. state.isDragSlide = payload;
  53. },
  54. setAudioEnd(state, payload) {
  55. state.isAudioEnded = payload;
  56. },
  57. },
  58. };
  59. export default audioModules;