优化下载、歌曲添加弹窗在大屏幕下的排版
parent
4965dad6a2
commit
d35a6f504f
|
@ -18,7 +18,7 @@
|
||||||
|
|
||||||
### 文档
|
### 文档
|
||||||
|
|
||||||
添加LX中定义的快捷操作汇总说明到常见问题中,这是目前可用的鼠标、键盘快捷操作,他们都可以在更新日志中找到
|
添加LX中定义的快捷操作汇总说明到常见问题中,这是目前可用的鼠标、键盘快捷操作,它们都可以在更新日志中找到
|
||||||
|
|
||||||
- 鼠标右击播放栏的歌曲图片封面可以定位当前播放的歌曲
|
- 鼠标右击播放栏的歌曲图片封面可以定位当前播放的歌曲
|
||||||
- 鼠标右击播放栏进度条上的LRC按钮可以锁定/解锁桌面歌词
|
- 鼠标右击播放栏进度条上的LRC按钮可以锁定/解锁桌面歌词
|
||||||
|
|
|
@ -79,7 +79,7 @@ export default {
|
||||||
|
|
||||||
.main {
|
.main {
|
||||||
padding: 15px;
|
padding: 15px;
|
||||||
max-width: 300px;
|
max-width: 400px;
|
||||||
min-width: 200px;
|
min-width: 200px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-flow: column nowrap;
|
flex-flow: column nowrap;
|
||||||
|
|
|
@ -51,7 +51,7 @@ export default {
|
||||||
|
|
||||||
.main {
|
.main {
|
||||||
padding: 15px;
|
padding: 15px;
|
||||||
max-width: 300px;
|
max-width: 400px;
|
||||||
min-width: 200px;
|
min-width: 200px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-flow: column nowrap;
|
flex-flow: column nowrap;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<template>
|
<template>
|
||||||
<material-modal :show="show" :bg-close="bgClose" @close="handleClose" :teleport="teleport">
|
<material-modal :show="show" :bg-close="bgClose" @close="handleClose" :teleport="teleport" max-width="70%">
|
||||||
<main :class="$style.main">
|
<main :class="$style.main">
|
||||||
<h2>{{$t('list_add__' + (isMove ? 'title_first_move' : 'title_first_add'))}} <span :class="$style.name">{{this.musicInfo && `${musicInfo.name}`}}</span> {{$t('list_add__title_last')}}</h2>
|
<h2>{{$t('list_add__' + (isMove ? 'title_first_move' : 'title_first_add'))}} <span :class="$style.name">{{this.musicInfo && `${musicInfo.name}`}}</span> {{$t('list_add__title_last')}}</h2>
|
||||||
<div class="scroll" :class="$style.btnContent">
|
<div class="scroll" :class="$style.btnContent">
|
||||||
|
@ -74,15 +74,30 @@ export default {
|
||||||
return {
|
return {
|
||||||
isEditing: false,
|
isEditing: false,
|
||||||
newListName: '',
|
newListName: '',
|
||||||
|
rowNum: 3,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
spaceNum() {
|
spaceNum() {
|
||||||
return this.lists.length < 2 ? 0 : (3 - this.lists.length % 3 - 1)
|
return this.lists.length < 2 ? 0 : (this.rowNum - this.lists.length % this.rowNum - 1)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
mounted() {
|
||||||
|
window.addEventListener('resize', this.handleResize)
|
||||||
|
},
|
||||||
|
beforeUnmount() {
|
||||||
|
window.removeEventListener('resize', this.handleResize)
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations('list', ['listAdd', 'listMove', 'createUserList']),
|
...mapMutations('list', ['listAdd', 'listMove', 'createUserList']),
|
||||||
|
handleResize() {
|
||||||
|
const width = window.innerWidth
|
||||||
|
this.rowNum = width <= 1440
|
||||||
|
? 3
|
||||||
|
: width <= 1920
|
||||||
|
? 4
|
||||||
|
: width <= 2560 ? 5 : 6
|
||||||
|
},
|
||||||
handleClick(index) {
|
handleClick(index) {
|
||||||
this.isMove
|
this.isMove
|
||||||
? this.listMove({ fromId: this.fromListId, toId: this.lists[index].id, musicInfo: this.musicInfo })
|
? this.listMove({ fromId: this.fromListId, toId: this.lists[index].id, musicInfo: this.musicInfo })
|
||||||
|
@ -117,7 +132,7 @@ export default {
|
||||||
|
|
||||||
.main {
|
.main {
|
||||||
// padding: 15px 0;
|
// padding: 15px 0;
|
||||||
max-width: 620px;
|
// max-width: 70%;
|
||||||
min-width: 200px;
|
min-width: 200px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-flow: column nowrap;
|
flex-flow: column nowrap;
|
||||||
|
@ -147,6 +162,7 @@ export default {
|
||||||
justify-content: space-evenly;
|
justify-content: space-evenly;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@item-width: (100% / 3);
|
||||||
.btn {
|
.btn {
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
margin-left: 15px;
|
margin-left: 15px;
|
||||||
|
@ -154,7 +170,8 @@ export default {
|
||||||
height: 36px;
|
height: 36px;
|
||||||
line-height: 36px;
|
line-height: 36px;
|
||||||
padding: 0 10px !important;
|
padding: 0 10px !important;
|
||||||
width: 180px;
|
width: calc(@item-width - 15px);
|
||||||
|
min-width: 160px;
|
||||||
.mixin-ellipsis-1;
|
.mixin-ellipsis-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -194,6 +211,25 @@ export default {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@item-width2: (100% / 4);
|
||||||
|
@media screen and (min-width: 1920px){
|
||||||
|
.btn {
|
||||||
|
width: calc(@item-width2 - 15px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@item-width3: (100% / 5);
|
||||||
|
@media screen and (min-width: 2048px){
|
||||||
|
.btn {
|
||||||
|
width: calc(@item-width3 - 15px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@item-width4: (100% / 6);
|
||||||
|
@media screen and (min-width: 2560px){
|
||||||
|
.btn {
|
||||||
|
width: calc(@item-width4 - 15px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
each(@themes, {
|
each(@themes, {
|
||||||
:global(#root.@{value}) {
|
:global(#root.@{value}) {
|
||||||
.main {
|
.main {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<template>
|
<template>
|
||||||
<material-modal :show="show" :bg-close="bgClose" @close="handleClose">
|
<material-modal :show="show" :bg-close="bgClose" @close="handleClose" max-width="70%">
|
||||||
<main :class="$style.main">
|
<main :class="$style.main">
|
||||||
<h2>{{$t('list_add__multiple_' + (isMove ? 'title_move' : 'title_add'), { num: musicList.length })}}</h2>
|
<h2>{{$t('list_add__multiple_' + (isMove ? 'title_move' : 'title_add'), { num: musicList.length })}}</h2>
|
||||||
<div class="scroll" :class="$style.btnContent">
|
<div class="scroll" :class="$style.btnContent">
|
||||||
|
@ -74,16 +74,31 @@ export default {
|
||||||
return {
|
return {
|
||||||
isEditing: false,
|
isEditing: false,
|
||||||
newListName: '',
|
newListName: '',
|
||||||
|
rowNum: 3,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
|
||||||
spaceNum() {
|
spaceNum() {
|
||||||
return this.lists.length < 2 ? 0 : (3 - this.lists.length % 3 - 1)
|
return this.lists.length < 2 ? 0 : (this.rowNum - this.lists.length % this.rowNum - 1)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
mounted() {
|
||||||
|
window.addEventListener('resize', this.handleResize)
|
||||||
|
},
|
||||||
|
beforeUnmount() {
|
||||||
|
window.removeEventListener('resize', this.handleResize)
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations('list', ['listAddMultiple', 'listMoveMultiple', 'createUserList']),
|
...mapMutations('list', ['listAddMultiple', 'listMoveMultiple', 'createUserList']),
|
||||||
|
handleResize() {
|
||||||
|
const width = window.innerWidth
|
||||||
|
this.rowNum = width <= 1440
|
||||||
|
? 3
|
||||||
|
: width <= 1920
|
||||||
|
? 4
|
||||||
|
: width <= 2560 ? 5 : 6
|
||||||
|
},
|
||||||
handleClick(index) {
|
handleClick(index) {
|
||||||
this.isMove
|
this.isMove
|
||||||
? this.listMoveMultiple({ fromId: this.fromListId, toId: this.lists[index].id, list: this.musicList })
|
? this.listMoveMultiple({ fromId: this.fromListId, toId: this.lists[index].id, list: this.musicList })
|
||||||
|
@ -119,7 +134,7 @@ export default {
|
||||||
|
|
||||||
.main {
|
.main {
|
||||||
// padding: 15px 0;
|
// padding: 15px 0;
|
||||||
max-width: 620px;
|
// max-width: 620px;
|
||||||
min-width: 200px;
|
min-width: 200px;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-flow: column nowrap;
|
flex-flow: column nowrap;
|
||||||
|
@ -145,6 +160,7 @@ export default {
|
||||||
justify-content: space-evenly;
|
justify-content: space-evenly;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@item-width: (100% / 3);
|
||||||
.btn {
|
.btn {
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
margin-left: 15px;
|
margin-left: 15px;
|
||||||
|
@ -152,7 +168,8 @@ export default {
|
||||||
height: 36px;
|
height: 36px;
|
||||||
line-height: 36px;
|
line-height: 36px;
|
||||||
padding: 0 10px !important;
|
padding: 0 10px !important;
|
||||||
width: 180px;
|
width: calc(@item-width - 15px);
|
||||||
|
min-width: 160px;
|
||||||
.mixin-ellipsis-1;
|
.mixin-ellipsis-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -192,6 +209,26 @@ export default {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@item-width2: (100% / 4);
|
||||||
|
@media screen and (min-width: 1920px){
|
||||||
|
.btn {
|
||||||
|
width: calc(@item-width2 - 15px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@item-width3: (100% / 5);
|
||||||
|
@media screen and (min-width: 2048px){
|
||||||
|
.btn {
|
||||||
|
width: calc(@item-width3 - 15px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@item-width4: (100% / 6);
|
||||||
|
@media screen and (min-width: 2560px){
|
||||||
|
.btn {
|
||||||
|
width: calc(@item-width4 - 15px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
each(@themes, {
|
each(@themes, {
|
||||||
:global(#root.@{value}) {
|
:global(#root.@{value}) {
|
||||||
.main {
|
.main {
|
||||||
|
|
|
@ -132,7 +132,9 @@ export default {
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
setWidth() {
|
setWidth() {
|
||||||
this.$refs.dom_container.style.width = this.$refs.dom_container.clientWidth + 'px'
|
setTimeout(() => {
|
||||||
|
this.$refs.dom_container.style.width = Math.floor(this.$refs.dom_container.parentNode.clientWidth * 0.5) + 'px'
|
||||||
|
})
|
||||||
},
|
},
|
||||||
async getComment(musicInfo, page, limit, retryNum = 0) {
|
async getComment(musicInfo, page, limit, retryNum = 0) {
|
||||||
let resp
|
let resp
|
||||||
|
|
|
@ -4,7 +4,7 @@ teleport(:to="teleport")
|
||||||
transition(enter-active-class="animated fadeIn" leave-active-class="animated fadeOut")
|
transition(enter-active-class="animated fadeIn" leave-active-class="animated fadeOut")
|
||||||
div(:class="$style.modal" v-show="showContent" @click="bgClose && close()")
|
div(:class="$style.modal" v-show="showContent" @click="bgClose && close()")
|
||||||
transition(:enter-active-class="inClass" :leave-active-class="outClass" @after-enter="$emit('after-enter', $event)" @after-leave="handleAfterLeave")
|
transition(:enter-active-class="inClass" :leave-active-class="outClass" @after-enter="$emit('after-enter', $event)" @after-leave="handleAfterLeave")
|
||||||
div(:class="$style.content" v-show="showContent" @click.stop)
|
div(:class="$style.content" v-show="showContent" @click.stop :style="contentStyle")
|
||||||
header(:class="$style.header")
|
header(:class="$style.header")
|
||||||
button(type="button" @click="close" v-if="closeBtn")
|
button(type="button" @click="close" v-if="closeBtn")
|
||||||
svg(version='1.1' xmlns='http://www.w3.org/2000/svg' xlink='http://www.w3.org/1999/xlink' height='100%' viewBox='0 0 212.982 212.982' space='preserve')
|
svg(version='1.1' xmlns='http://www.w3.org/2000/svg' xlink='http://www.w3.org/1999/xlink' height='100%' viewBox='0 0 212.982 212.982' space='preserve')
|
||||||
|
@ -34,6 +34,10 @@ export default {
|
||||||
type: String,
|
type: String,
|
||||||
default: '#root',
|
default: '#root',
|
||||||
},
|
},
|
||||||
|
maxWidth: {
|
||||||
|
type: String,
|
||||||
|
default: '76%',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
emits: ['after-enter', 'after-leave', 'close'],
|
emits: ['after-enter', 'after-leave', 'close'],
|
||||||
data() {
|
data() {
|
||||||
|
@ -91,6 +95,11 @@ export default {
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters(['setting']),
|
...mapGetters(['setting']),
|
||||||
|
contentStyle() {
|
||||||
|
return {
|
||||||
|
maxWidth: this.maxWidth,
|
||||||
|
}
|
||||||
|
},
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
'setting.randomAnimate'(n) {
|
'setting.randomAnimate'(n) {
|
||||||
|
@ -182,7 +191,7 @@ export default {
|
||||||
box-shadow: 0 0 3px rgba(0, 0, 0, .3);
|
box-shadow: 0 0 3px rgba(0, 0, 0, .3);
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
max-height: 80%;
|
max-height: 80%;
|
||||||
max-width: 76%;
|
// max-width: 76%;
|
||||||
min-width: 220px;
|
min-width: 220px;
|
||||||
position: relative;
|
position: relative;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
|
@ -208,8 +208,10 @@ export default {
|
||||||
window.removeEventListener('resize', this.handleSetTagWidth)
|
window.removeEventListener('resize', this.handleSetTagWidth)
|
||||||
},
|
},
|
||||||
handleSetTagWidth() {
|
handleSetTagWidth() {
|
||||||
|
setTimeout(() => {
|
||||||
this.setTagListWidth()
|
this.setTagListWidth()
|
||||||
setTimeout(this.setTagListWidth, 100)
|
setTimeout(this.setTagListWidth, 100)
|
||||||
|
})
|
||||||
},
|
},
|
||||||
handle_key_backspace_down({ event }) {
|
handle_key_backspace_down({ event }) {
|
||||||
if (!this.isVisibleListDetail ||
|
if (!this.isVisibleListDetail ||
|
||||||
|
|
Loading…
Reference in New Issue