|
@@ -1,5 +1,12 @@
|
|
|
// import { PaperClipIcon } from '@heroicons/vue/solid'
|
|
|
-import { defineComponent, toRefs, reactive, onMounted, ref ,nextTick} from 'vue'
|
|
|
+import {
|
|
|
+ defineComponent,
|
|
|
+ toRefs,
|
|
|
+ reactive,
|
|
|
+ onMounted,
|
|
|
+ ref,
|
|
|
+ nextTick
|
|
|
+} from 'vue'
|
|
|
import arrow from '@/components/musicLIstItem/images/arrow.png'
|
|
|
import styles from './index.module.less'
|
|
|
import hotSearch from '@/components/hotSearch'
|
|
@@ -29,10 +36,10 @@ export default defineComponent({
|
|
|
albumList: [],
|
|
|
musicList: [],
|
|
|
chiose: 'album',
|
|
|
- searchs:{
|
|
|
- albumTagIds:'',
|
|
|
- search:'',
|
|
|
- subject:''
|
|
|
+ searchs: {
|
|
|
+ albumTagIds: '',
|
|
|
+ search: '',
|
|
|
+ subject: ''
|
|
|
}
|
|
|
})
|
|
|
const route = useRoute()
|
|
@@ -69,35 +76,35 @@ export default defineComponent({
|
|
|
// console.log(e)
|
|
|
// }
|
|
|
// }
|
|
|
- const searchRust = (val:any)=>{
|
|
|
+ const searchRust = (val: any) => {
|
|
|
state.searchs.albumTagIds = val.join(',') as string
|
|
|
startSearch(state.searchs)
|
|
|
}
|
|
|
- const startSearch = (val:any)=>{
|
|
|
- state.searchs = {...state.searchs,...val}
|
|
|
- search()
|
|
|
+ const startSearch = (val: any) => {
|
|
|
+ state.searchs = { ...state.searchs, ...val }
|
|
|
+ search()
|
|
|
}
|
|
|
|
|
|
- const search = ()=>{
|
|
|
- if(state.chiose == 'album'){
|
|
|
- searchAlbumRef.value.getList(state.searchs)
|
|
|
+ const search = () => {
|
|
|
+ if (state.chiose == 'album') {
|
|
|
+ searchAlbumRef.value.getList(state.searchs)
|
|
|
}
|
|
|
- if(state.chiose == 'music' ){
|
|
|
+ if (state.chiose == 'music') {
|
|
|
searchMusicRef.value.getList(state.searchs)
|
|
|
}
|
|
|
}
|
|
|
onMounted(() => {
|
|
|
- if(route.query.search){
|
|
|
+ if (route.query.search) {
|
|
|
state.searchs.search = route.query.search as string
|
|
|
}
|
|
|
- if(route.query.subject){
|
|
|
+ if (route.query.subject) {
|
|
|
state.searchs.subject = route.query.subject as string
|
|
|
}
|
|
|
- if(route.query.type){
|
|
|
+ if (route.query.type) {
|
|
|
state.chiose = route.query.type as string
|
|
|
}
|
|
|
- console.log( state.chiose,'chiose')
|
|
|
- nextTick(()=>{
|
|
|
+ console.log(state.chiose, 'chiose')
|
|
|
+ nextTick(() => {
|
|
|
search()
|
|
|
})
|
|
|
|
|
@@ -112,23 +119,43 @@ export default defineComponent({
|
|
|
searchMusicRef
|
|
|
}
|
|
|
},
|
|
|
- render() {
|
|
|
- return (
|
|
|
+ render() {
|
|
|
+ return (
|
|
|
<div>
|
|
|
<div class="">
|
|
|
<div class="wall" style={{ height: '70px' }}></div>
|
|
|
<div class={styles.w1200}>
|
|
|
<div class={styles.section}>
|
|
|
- <searchInput isWhile={true} searchVal={{...this.searchs}} onStartSearch={(val:any)=>{this.startSearch(val)}}></searchInput>
|
|
|
- <hotSearch type={'search'} onSearchRust={(val:any)=>this.searchRust(val)} onHotTag={(val:string)=>{this.searchs.search = val}} ></hotSearch>
|
|
|
- <ElTabs class={styles.myTab} v-model={this.chiose}>
|
|
|
- <ElTabPane label="专辑" name="album">
|
|
|
- {this.chiose == 'album' ? <searchAlbum ref='searchAlbumRef'/> : null}
|
|
|
- </ElTabPane>
|
|
|
- <ElTabPane label="乐谱" name="music">
|
|
|
- {this.chiose == 'music' ? <searchMusic ref='searchMusicRef'/> : null}
|
|
|
- </ElTabPane>
|
|
|
- </ElTabs>
|
|
|
+ <searchInput
|
|
|
+ isWhile={true}
|
|
|
+ searchVal={{ ...this.searchs }}
|
|
|
+ onStartSearch={(val: any) => {
|
|
|
+ this.startSearch(val)
|
|
|
+ }}
|
|
|
+ ></searchInput>
|
|
|
+ <div class={styles.hotSearch}>
|
|
|
+ <hotSearch
|
|
|
+ type={'search'}
|
|
|
+ onSearchRust={(val: any) => this.searchRust(val)}
|
|
|
+ onHotTag={(val: string) => {
|
|
|
+ this.searchs.search = val
|
|
|
+ }}
|
|
|
+ ></hotSearch>
|
|
|
+ </div>
|
|
|
+ <div class={styles.myTabWrap}>
|
|
|
+ <ElTabs class={styles.myTab} v-model={this.chiose}>
|
|
|
+ <ElTabPane label="专辑" name="album">
|
|
|
+ {this.chiose == 'album' ? (
|
|
|
+ <searchAlbum ref="searchAlbumRef" />
|
|
|
+ ) : null}
|
|
|
+ </ElTabPane>
|
|
|
+ <ElTabPane label="乐谱" name="music">
|
|
|
+ {this.chiose == 'music' ? (
|
|
|
+ <searchMusic ref="searchMusicRef" />
|
|
|
+ ) : null}
|
|
|
+ </ElTabPane>
|
|
|
+ </ElTabs>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|