64 lines
1.3 KiB
JavaScript
64 lines
1.3 KiB
JavaScript
// state
|
|
const state = {
|
|
defaultList: {
|
|
name: '试听列表',
|
|
list: [],
|
|
},
|
|
userList: [],
|
|
}
|
|
|
|
// getters
|
|
const getters = {
|
|
defaultList: state => state.defaultList || {},
|
|
userList: state => state.userList,
|
|
}
|
|
|
|
// actions
|
|
const actions = {
|
|
|
|
}
|
|
|
|
// mitations
|
|
const mutations = {
|
|
initDefaultList(state, data) {
|
|
state.defaultList = data
|
|
},
|
|
setDefaultList(state, list) {
|
|
state.defaultList.list = list
|
|
},
|
|
defaultListAdd(state, musicInfo) {
|
|
if (state.defaultList.list.some(s => s.songmid === musicInfo.songmid)) return
|
|
state.defaultList.list.push(musicInfo)
|
|
},
|
|
defaultListAddMultiple(state, list) {
|
|
list.forEach(musicInfo => {
|
|
if (state.defaultList.list.some(s => s.songmid === musicInfo.songmid)) return
|
|
state.defaultList.list.push(musicInfo)
|
|
})
|
|
},
|
|
defaultListRemove(state, index) {
|
|
state.defaultList.list.splice(index, 1)
|
|
},
|
|
updateMusicInfo(state, { index, data }) {
|
|
Object.assign(state.defaultList.list[index], data)
|
|
},
|
|
defaultListRemoveMultiple(state, list) {
|
|
list.forEach(musicInfo => {
|
|
let index = state.defaultList.list.indexOf(musicInfo)
|
|
if (index < 0) return
|
|
state.defaultList.list.splice(index, 1)
|
|
})
|
|
},
|
|
defaultListClear(state) {
|
|
state.defaultList.list.length = 0
|
|
},
|
|
}
|
|
|
|
export default {
|
|
namespaced: true,
|
|
state,
|
|
getters,
|
|
actions,
|
|
mutations,
|
|
}
|