歌曲列表右击菜单新增跳转到当前歌曲源官方详情页菜单

This commit is contained in:
lyswhut
2020-06-25 23:10:38 +08:00
parent 9eec1adf77
commit 5d91643637
29 changed files with 116 additions and 13 deletions
+16 -2
View File
@@ -61,8 +61,8 @@
<script>
import { mapGetters, mapActions, mapMutations } from 'vuex'
import { scrollTo, clipboardWriteText, assertApiSupport, findParentNode } from '../utils'
// import music from '../utils/music'
import { scrollTo, clipboardWriteText, assertApiSupport, findParentNode, openUrl } from '../utils'
import musicSdk from '../utils/music'
export default {
name: 'Search',
data() {
@@ -90,6 +90,7 @@ export default {
play: true,
addTo: true,
download: true,
sourceDetail: true,
},
menuLocation: {
x: 0,
@@ -178,6 +179,11 @@ export default {
action: 'addTo',
disabled: !this.listMenu.itemMenuControl.addTo,
},
{
name: this.$t('view.search.list_source_detail'),
action: 'sourceDetail',
disabled: !this.listMenu.itemMenuControl.sourceDetail,
},
]
},
listInfo() {
@@ -414,6 +420,7 @@ export default {
return assertApiSupport(source)
},
handleListItemRigthClick(event, index) {
this.listMenu.itemMenuControl.sourceDetail = !!musicSdk[this.listInfo.list[index].source].getMusicDetailPageUrl
let dom_selected = this.$refs.dom_tbody.querySelector('tr.selected')
if (dom_selected) dom_selected.classList.remove('selected')
this.$refs.dom_tbody.querySelectorAll('tr')[index].classList.add('selected')
@@ -436,6 +443,7 @@ export default {
let index = this.listMenu.rightClickItemIndex
this.hideListMenu()
let minfo
let url
switch (action && action.action) {
case 'play':
if (this.selectedData.length) {
@@ -468,6 +476,12 @@ export default {
})
}
break
case 'sourceDetail':
minfo = this.listInfo.list[index]
url = musicSdk[minfo.source].getMusicDetailPageUrl(minfo)
if (!url) return
openUrl(url)
break
}
},
},