歌曲播放页面的数据vuex管理

1.state.js

 1 import {playMode} from ‘@/common/js/config‘
 2 const state = {
 3   singer:{},
 4   playing:false,
 5   fullScreen:false,
 6   playlist:[],
 7   sequenceList:[],
 8   mode:playMode.sequence,
 9   currentIndex:-1,
10 }
11
12 export default state

2.getters.js

 1 export const singer = state =>state.singer
 2 export const playing = state => state.playing
 3 export  const fullScreen = state =>state.fullScreen
 4 export const playlist = state => state.playlist
 5 export const sequenctList = state =>state.sequenceList
 6 export const mode = state =>state.mode
 7 export const currentIndex =state=> state.currentIndex
 8 export const currentSong = (state) =>{
 9   return state.playList[state.currentIndex] ||{ }
10 }

3.mutation-types.js

 1 export const SET_SINGER = ‘SET_SINGER‘
 2
 3 export const SET_PLAYING_STATE = ‘SET_PLAYING_STATE‘
 4
 5 export const SET_FULL_SCREEN = ‘SET_FULL_SCREEN‘
 6
 7 export const SET_PLAYLIST = ‘SET_PLAYLIST‘
 8
 9 export const SET_SEQUENCE_LIST = ‘SET_SEQUENCE_LIST‘
10
11 export const SET_PLAY_MODE = ‘SET_PLAY_MODE‘
12
13 export const SET_CURRENT_INDEX = ‘SET_CURRENT_INDEX‘

4.mutations.js

 1 import * as types from ‘./mutation-types‘
 2 const mutations = {
 3   [types.SET_SINGER](state,singer){//mutations接收两个参数,第一个是state另外一个是传递过来的值
 4     state.singer = singer
 5   },
 6   [types.SET_PLAYING_STATE](state,flag){
 7     state.playing = flag
 8   },
 9   [types.SET_FULL_SCREEN](state, flag) {
10     state.fullScreen = flag
11   },
12   [types.SET_PLAYLIST](state, list) {
13     state.playlist = list
14   },
15   [types.SET_SEQUENCE_LIST](state, list) {
16     state.sequenceList = list
17   },
18   [types.SET_PLAY_MODE](state, mode) {
19     state.mode = mode
20   },
21   [types.SET_CURRENT_INDEX](state, index) {
22     state.currentIndex = index
23   },
24 }
25
26
27 export default mutations

原文地址:https://www.cnblogs.com/yangguoe/p/9463144.html

时间: 2024-07-29 19:23:46

歌曲播放页面的数据vuex管理的相关文章

92cc.com脚本:一键点赞;一键留言板或回复;群发私信;全站广告拦截;美化92cc.com歌曲播放页面

// ==UserScript== // @name 92cc.com重排版 // @namespace [email protected] // @author xinggsf~gmail.com // @description 一键点赞:一键留言板或回复:群发私信:全站广告拦截:美化92cc.com歌曲播放页面 // @description:en Set css sytle on 92cc.com site // @license GPL version 3 // @include htt

Android开发本地及网络Mp3音乐播放器(十)最近播放界面与数据保存更新

实现功能: 实现MyLoveMusicActivity(音乐收藏界面) 实现MyRecordMusicActivity(最近播放界面) 实现MyMusicListFragment(本地音乐界面)ItemClick事件发生后,切换到PlayActivity(独立音乐播放界面)只播放 本地音乐. 实现MyLoveMusicActivity(音乐收藏界面)ItemClick事件发生后,切换到PlayActivity(独立音乐播放界面)只播放 音乐收藏. 实现MyRecordMusicActivity(

歌曲播放的随机算法的探讨

对于音乐播放,最流行的有顺序播放,顺序循环播放,随机播放,单曲播放四种选项. 首先我以个人观点点评下目前常用的四种功能: 顺序播放:是一种很鸡肋的功能,为什么各大厂商都要做!感觉一般人都不会用的,播放一遍就停了,还不如做一个定时/定数停止播放的功能: 顺序循环播放:使用体验很不错,但是有个比较糟糕的问题是,让两首不相关的作品间产生了联系,导致了一首歌放完了,就已经知道了下首歌是什么了.或者当在其他地方听到了一首歌完了,脑中便浮现了自己音乐列表的下首歌了: 单曲播放:这个选项没什么可说的,动听歌曲

详细介绍ASP.NET页面间数据传递的使用方法

在ASP.NET中,页面间数据传递的方法有很多.下面为大家总结一下,页面间数据传递的方法. Web页面是无状态的,服务器对每一次请求都认为来自不同用户,因此,变量的状态在连续对同一页面的多次请求之间或在页面跳转时不会被保留.在 用ASP.NET 设计开发一个Web系统时, 遇到一个重要的问题是如何保证数据在页面间进行正确.安全和高效地传送,Asp.net 提供了状态管理等多种技术来解决保存和传递数据问题,以下来探讨.NET 下的解决此问题的各种方法和各自的适用场合. 一.ASP.NET页面间数据

KTV歌曲播放原理

歌曲播放原理 一开始要有一个Song类,在类外面定义枚举,在里面放四种状态, 为:已播放,未播放,重唱,切歌 在类里把歌曲名称和路径封装成字段 起初每首歌的状态默认为未播放 通过MadeSongPlayed(),MadeSongAgain(),MadeSongCut()这几种方法 可以实现分别将歌曲状态改为已播放,重唱,切歌的功能 当你在歌曲列表页面想要点击播放一首歌的时候 因为现在的歌曲名和歌手只是两个字符串,所以你要先创建一个歌曲对象 此外,还要在PlayList类里写一个方法获取当前播放的

ASP.NET页面间数据传递的方法

本文我们将讨论的是asp.net页面间数据传递的几种方法,对此希望能帮助大家正确的理解ASP.NET页面间数据传递的用处以及便利性. 引言 Web页面是无状态的, 服务器对每一次请求都认为来自不同用户,因此,变量的状态在连续对同一页面的多次请求之间或在页面跳转时不会被保留.在用ASP.NET 设计开发一个Web系统时, 遇到一个重要的问题是如何保证数据在页面间进行正确.安全和高效地传送,Asp.net 提供了状态管理等多种技术来解决保存和传递数据问题,以下来探讨.NET 下的解决此问题的各种方法

MySQL 基础知识梳理学习(二)----记录在页面层级的组织管理

1.InnoDB的数据存储结构 InnoDB中数据是通过段.簇.页面构成的. (1)段是表空间文件中的主要组织结构,它是一个逻辑概念,用来管理物理文件,是构成索引.表.回滚段的基本元素.创建一个索引(B+树)时会同时创建两个段,分别是内节点段和叶子段,内节点段用来管理(存储)B+树中非叶子节点(页面)的数据,叶子节点用来管理(存储)B+树中叶子节点数据.一个索引包括2个段,那么一个表的段的数目,就是索引的个数乘以2了. (2)簇是构成段的基本元素,一个段有若干个簇构成.一个簇是物理上连续分配的一

关于Vue中两个vue页面传数据

一个vue页面路由跳转到另一个vue页面想要获得前一个页面的数据的方法:路由传参 路由传参方法适用于: 1:在A页面获得数据提交给B页面 / 将A页面的数据给B页面 2:A页面中点击按钮跳转到B页面,B页面需要使用A页面中的数据 Vuex和本地缓存的方法就不讲了 问题:为什么使用这种方法? 答:在A页面点击按钮路由跳转到B页面了,但是我在B页面还需要A页面中的数据 这是数据: data: 'chalk' 这是router/index.js中的两个路由地址: { path: '/theme', n

【python项目实战】BBS论坛(3)页面输出数据,及跳转

一.主页输出简单数据 核心代码; index.html     <div class="container">         {% block page-container %}             {{articles}}             {{ request.path }}         {% endblock %}     </div> <!-- /container --> views.py def index(request