|  | @@ -1,165 +1,332 @@
 | 
	
		
			
				|  |  | -import {
 | 
	
		
			
				|  |  | -  defineComponent
 | 
	
		
			
				|  |  | -} from 'vue';
 | 
	
		
			
				|  |  | +import { defineComponent, nextTick, onMounted, reactive, ref } from 'vue';
 | 
	
		
			
				|  |  |  import styles from './index.module.less';
 | 
	
		
			
				|  |  |  import TheSearch from '/src/components/TheSearch';
 | 
	
		
			
				|  |  |  import recommendTitle from './images/reommon_title.png';
 | 
	
		
			
				|  |  |  import newTitle from './images/new_title.png';
 | 
	
		
			
				|  |  |  import hotTitle from './images/hot_title.png';
 | 
	
		
			
				|  |  | -import { NScrollbar } from 'naive-ui';
 | 
	
		
			
				|  |  | +import { NScrollbar, NSpin } from 'naive-ui';
 | 
	
		
			
				|  |  |  import TheNoticeBar from '/src/components/TheNoticeBar';
 | 
	
		
			
				|  |  |  import { useRouter } from 'vue-router';
 | 
	
		
			
				|  |  | +import { api_musicSheetQueryByTag } from './api';
 | 
	
		
			
				|  |  | +import { api_musicSheetPage } from '../xiaoku-ai/api';
 | 
	
		
			
				|  |  | +import TheEmpty from '/src/components/TheEmpty';
 | 
	
		
			
				|  |  | +import titleBg from './images/title-bg.png'
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +export const formatUsedNum = (num: number) => {
 | 
	
		
			
				|  |  | +  if (num < 10000) {
 | 
	
		
			
				|  |  | +    return num;
 | 
	
		
			
				|  |  | +  } else {
 | 
	
		
			
				|  |  | +    const n = num / 10000;
 | 
	
		
			
				|  |  | +    return Number(n.toFixed(1)) + '万';
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  export default defineComponent({
 | 
	
		
			
				|  |  |    name: 'xiaoku-list',
 | 
	
		
			
				|  |  |    setup() {
 | 
	
		
			
				|  |  | -    const router = useRouter()
 | 
	
		
			
				|  |  | +    const router = useRouter();
 | 
	
		
			
				|  |  | +    const state = reactive({
 | 
	
		
			
				|  |  | +      HOT: [] as any,
 | 
	
		
			
				|  |  | +      NEW: [] as any,
 | 
	
		
			
				|  |  | +      RECOMMEND: [] as any,
 | 
	
		
			
				|  |  | +      isSearch: false, // 是否点击搜索
 | 
	
		
			
				|  |  | +      keyword: null as any,
 | 
	
		
			
				|  |  | +      list: [] as any,
 | 
	
		
			
				|  |  | +      loading: false as any,
 | 
	
		
			
				|  |  | +      finshed: false,
 | 
	
		
			
				|  |  | +      page: 1,
 | 
	
		
			
				|  |  | +      rows: 20
 | 
	
		
			
				|  |  | +    });
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    /** 获取三个模块 */
 | 
	
		
			
				|  |  | +    const getDetail = async () => {
 | 
	
		
			
				|  |  | +      try {
 | 
	
		
			
				|  |  | +        const { data } = await api_musicSheetQueryByTag();
 | 
	
		
			
				|  |  | +        state.RECOMMEND = data.RECOMMEND || [];
 | 
	
		
			
				|  |  | +        state.HOT = data.HOT || [];
 | 
	
		
			
				|  |  | +        state.NEW = data.NEW || [];
 | 
	
		
			
				|  |  | +      } catch {
 | 
	
		
			
				|  |  | +        //
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    /** 获取更多 */
 | 
	
		
			
				|  |  | +    const getList = async () => {
 | 
	
		
			
				|  |  | +      state.loading = true;
 | 
	
		
			
				|  |  | +      try {
 | 
	
		
			
				|  |  | +        const { data } = await api_musicSheetPage({ keyword: state.keyword, page: state.page, rows: state.rows });
 | 
	
		
			
				|  |  | +        const result = data.rows || [];
 | 
	
		
			
				|  |  | +        result.forEach((item: any) => {
 | 
	
		
			
				|  |  | +          if (item.musicSheetName) {
 | 
	
		
			
				|  |  | +            const regex = new RegExp(state.keyword, 'gi');
 | 
	
		
			
				|  |  | +            const highlightedText = item.musicSheetName.replace(
 | 
	
		
			
				|  |  | +              regex,
 | 
	
		
			
				|  |  | +              `<span>$&</span>`
 | 
	
		
			
				|  |  | +            );
 | 
	
		
			
				|  |  | +            item.musicNameReg = highlightedText;
 | 
	
		
			
				|  |  | +          }
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  | +        state.list = [...state.list, ...data.rows];
 | 
	
		
			
				|  |  | +        state.finshed = state.page >= data.pages;
 | 
	
		
			
				|  |  | +        console.log(data, state.list, 'list');
 | 
	
		
			
				|  |  | +      } catch (e) {
 | 
	
		
			
				|  |  | +        //
 | 
	
		
			
				|  |  | +        console.log(e, 'e');
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      state.loading = false;
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    const spinRef = ref();
 | 
	
		
			
				|  |  | +    const handleResh = () => {
 | 
	
		
			
				|  |  | +      if (state.loading || state.finshed) return;
 | 
	
		
			
				|  |  | +      state.page = state.page + 1;
 | 
	
		
			
				|  |  | +      getList();
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    const __initSpin = () => {
 | 
	
		
			
				|  |  | +      const obv = new IntersectionObserver(entries => {
 | 
	
		
			
				|  |  | +        if (entries[0].intersectionRatio > 0) {
 | 
	
		
			
				|  |  | +          handleResh();
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  | +      obv.observe(spinRef.value);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    // 查看更多
 | 
	
		
			
				|  |  | +    const onMore = (type?: '' | 'RECOMMEND' | 'NEW' | 'HOT') => {
 | 
	
		
			
				|  |  | +      router.push({
 | 
	
		
			
				|  |  | +        path: '/xiaoku-detail',
 | 
	
		
			
				|  |  | +        query: {
 | 
	
		
			
				|  |  | +          type: type
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    onMounted(() => {
 | 
	
		
			
				|  |  | +      getDetail();
 | 
	
		
			
				|  |  | +    });
 | 
	
		
			
				|  |  |      return () => (
 | 
	
		
			
				|  |  |        <div class={styles.list}>
 | 
	
		
			
				|  |  | -        <h2 class={styles.topTitle}>海量曲目 任你选择</h2>
 | 
	
		
			
				|  |  | +        <h2 class={styles.topTitle}>
 | 
	
		
			
				|  |  | +          <img src={titleBg} />
 | 
	
		
			
				|  |  | +        </h2>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          <div class={styles.searchSection}>
 | 
	
		
			
				|  |  |            <TheSearch
 | 
	
		
			
				|  |  |              round
 | 
	
		
			
				|  |  |              class={styles.searchInput}
 | 
	
		
			
				|  |  |              onSearch={val => {
 | 
	
		
			
				|  |  | -              // forms.keyword = val;
 | 
	
		
			
				|  |  | -              // getList();
 | 
	
		
			
				|  |  | +              if(val && val.trim()) {
 | 
	
		
			
				|  |  | +                state.isSearch = true;
 | 
	
		
			
				|  |  | +                state.keyword = val.trim()
 | 
	
		
			
				|  |  | +                state.loading = true;
 | 
	
		
			
				|  |  | +                state.finshed = false;
 | 
	
		
			
				|  |  | +                state.list = []
 | 
	
		
			
				|  |  | +                getList();
 | 
	
		
			
				|  |  | +                nextTick(() => {
 | 
	
		
			
				|  |  | +                  __initSpin()
 | 
	
		
			
				|  |  | +                })
 | 
	
		
			
				|  |  | +              } else {
 | 
	
		
			
				|  |  | +                state.isSearch = false;
 | 
	
		
			
				|  |  | +              }
 | 
	
		
			
				|  |  |              }}
 | 
	
		
			
				|  |  |            />
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -          <div class={styles.moreMusic}>全部曲目</div>
 | 
	
		
			
				|  |  | +          <div class={styles.moreMusic} onClick={() => onMore()}>全部曲目</div>
 | 
	
		
			
				|  |  |          </div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -         <div class={styles.container}>
 | 
	
		
			
				|  |  | -          <>
 | 
	
		
			
				|  |  | -          <div class={[styles.section, styles.recommendSection]}>
 | 
	
		
			
				|  |  | -            <div class={styles.sectionTitle}>
 | 
	
		
			
				|  |  | -              <img src={recommendTitle} class={styles.imgTitle} />
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -              <div class={styles.moreBtn}>更多</div>
 | 
	
		
			
				|  |  | -            </div>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +        {state.isSearch ? (
 | 
	
		
			
				|  |  | +          <div class={styles.searchContainer}>
 | 
	
		
			
				|  |  |              <NScrollbar>
 | 
	
		
			
				|  |  | -              {[1, 2, 3, 4, 5, 6, 7, 8, 9, 10].map(() => (
 | 
	
		
			
				|  |  | -                <div class={styles.item} onClick={() => {
 | 
	
		
			
				|  |  | -                  router.push({
 | 
	
		
			
				|  |  | -                    path: '/xiaoku-detail'
 | 
	
		
			
				|  |  | -                  })
 | 
	
		
			
				|  |  | -                }}>
 | 
	
		
			
				|  |  | -                  <div class={[styles.num]}>01</div>
 | 
	
		
			
				|  |  | -                  <div class={styles.img}>
 | 
	
		
			
				|  |  | -                    <img
 | 
	
		
			
				|  |  | -                      referrerpolicy="no-referrer"
 | 
	
		
			
				|  |  | -                      src="https://lanhu-oss.lanhuapp.com/SketchPnge5215a88a6a2d4a1aba30956f78102bf01fac5e63f33b045c1427d94330297dd"
 | 
	
		
			
				|  |  | -                    />
 | 
	
		
			
				|  |  | +            <div class={styles.sectionContainer}>
 | 
	
		
			
				|  |  | +              {state.list.map((item: any) => (
 | 
	
		
			
				|  |  | +                <div class={styles.sectionItem}>
 | 
	
		
			
				|  |  | +                  <div class={styles.img} style={{ marginLeft: 0 }}>
 | 
	
		
			
				|  |  | +                    <img referrerpolicy="no-referrer" src={item.titleImg} />
 | 
	
		
			
				|  |  |                    </div>
 | 
	
		
			
				|  |  |                    <div class={styles.infos}>
 | 
	
		
			
				|  |  | -                    <div class={styles.topName}>
 | 
	
		
			
				|  |  | -                      <TheNoticeBar text='玩具兵进行曲玩具兵进行曲玩具兵进行曲玩具兵进行曲玩具兵进行曲玩具兵进行曲' />
 | 
	
		
			
				|  |  | -                    </div>
 | 
	
		
			
				|  |  | +                    <div
 | 
	
		
			
				|  |  | +                      class={styles.topName}
 | 
	
		
			
				|  |  | +                      v-html={item.musicNameReg}></div>
 | 
	
		
			
				|  |  |                      <div class={styles.types}>
 | 
	
		
			
				|  |  |                        <div class={styles.hot}>
 | 
	
		
			
				|  |  | -                        <span>1.8万</span>
 | 
	
		
			
				|  |  | +                        <span>{formatUsedNum(item.usedNum)}</span>
 | 
	
		
			
				|  |  |                        </div>
 | 
	
		
			
				|  |  | -                      <div class={styles.sing}>演唱</div>
 | 
	
		
			
				|  |  | -                      <div class={styles.song}>演奏</div>
 | 
	
		
			
				|  |  | -                      <div class={styles.author}>耶寒尔</div>
 | 
	
		
			
				|  |  | +                      {item.audioPlayTypes?.includes('SING') && (
 | 
	
		
			
				|  |  | +                        <div class={styles.sing}>演唱</div>
 | 
	
		
			
				|  |  | +                      )}
 | 
	
		
			
				|  |  | +                      {item.audioPlayTypes?.includes('PLAY') && (
 | 
	
		
			
				|  |  | +                        <div class={styles.song}>演奏</div>
 | 
	
		
			
				|  |  | +                      )}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                      <div class={styles.author}>{item.composer}</div>
 | 
	
		
			
				|  |  |                      </div>
 | 
	
		
			
				|  |  |                    </div>
 | 
	
		
			
				|  |  |                  </div>
 | 
	
		
			
				|  |  |                ))}
 | 
	
		
			
				|  |  | +            </div>
 | 
	
		
			
				|  |  | +            <div
 | 
	
		
			
				|  |  | +              ref={spinRef}
 | 
	
		
			
				|  |  | +              class={[styles.loadingWrap, state.finshed && styles.showLoading]}>
 | 
	
		
			
				|  |  | +              <NSpin show={true}></NSpin>
 | 
	
		
			
				|  |  | +            </div>
 | 
	
		
			
				|  |  |              </NScrollbar>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            {!state.loading && state.list.length === 0 && (
 | 
	
		
			
				|  |  | +              <div class={styles.empty}>
 | 
	
		
			
				|  |  | +                <TheEmpty></TheEmpty>
 | 
	
		
			
				|  |  | +              </div>
 | 
	
		
			
				|  |  | +            )}
 | 
	
		
			
				|  |  |            </div>
 | 
	
		
			
				|  |  | -          <div class={[styles.section, styles.hotSection]}>
 | 
	
		
			
				|  |  | -            <div class={styles.sectionTitle}>
 | 
	
		
			
				|  |  | -              <img src={hotTitle} class={styles.imgTitle} />
 | 
	
		
			
				|  |  | +        ) : (
 | 
	
		
			
				|  |  | +          <div class={styles.container}>
 | 
	
		
			
				|  |  | +            <div class={[styles.section, styles.recommendSection]}>
 | 
	
		
			
				|  |  | +              <div class={styles.sectionTitle}>
 | 
	
		
			
				|  |  | +                <img src={recommendTitle} class={styles.imgTitle} />
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -              <div class={styles.moreBtn}>更多</div>
 | 
	
		
			
				|  |  | -            </div>
 | 
	
		
			
				|  |  | +                <div class={styles.moreBtn}>更多</div>
 | 
	
		
			
				|  |  | +              </div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            <NScrollbar>
 | 
	
		
			
				|  |  | -              {[1, 2, 3, 4, 5, 6, 7, 8, 9, 10].map(() => (
 | 
	
		
			
				|  |  | -                <div class={styles.item}>
 | 
	
		
			
				|  |  | -                  <div class={[styles.num]}>01</div>
 | 
	
		
			
				|  |  | -                  <div class={styles.img}>
 | 
	
		
			
				|  |  | -                    <img
 | 
	
		
			
				|  |  | -                      referrerpolicy="no-referrer"
 | 
	
		
			
				|  |  | -                      src="https://lanhu-oss.lanhuapp.com/SketchPnge5215a88a6a2d4a1aba30956f78102bf01fac5e63f33b045c1427d94330297dd"
 | 
	
		
			
				|  |  | -                    />
 | 
	
		
			
				|  |  | -                  </div>
 | 
	
		
			
				|  |  | -                  <div class={styles.infos}>
 | 
	
		
			
				|  |  | -                    <div class={styles.topName}>玩具兵进行曲玩具兵进行曲玩具兵进行曲玩具兵进行曲玩具兵进行曲玩具兵进行曲</div>
 | 
	
		
			
				|  |  | -                    <div class={styles.types}>
 | 
	
		
			
				|  |  | -                      <div class={styles.hot}>
 | 
	
		
			
				|  |  | -                        <span>1.8万</span>
 | 
	
		
			
				|  |  | +              <NScrollbar>
 | 
	
		
			
				|  |  | +                {state.RECOMMEND.map((item: any, index: number) => (
 | 
	
		
			
				|  |  | +                  <div
 | 
	
		
			
				|  |  | +                    class={styles.item}
 | 
	
		
			
				|  |  | +                    onClick={() => {
 | 
	
		
			
				|  |  | +                      onMore('RECOMMEND');
 | 
	
		
			
				|  |  | +                    }}>
 | 
	
		
			
				|  |  | +                    <div
 | 
	
		
			
				|  |  | +                      class={[
 | 
	
		
			
				|  |  | +                        styles.num,
 | 
	
		
			
				|  |  | +                        index === 0 ? styles.num1 : '',
 | 
	
		
			
				|  |  | +                        index === 1 ? styles.num2 : '',
 | 
	
		
			
				|  |  | +                        index === 2 ? styles.num3 : ''
 | 
	
		
			
				|  |  | +                      ]}>
 | 
	
		
			
				|  |  | +                      {(index + 1).toString().padStart(2, '0')}
 | 
	
		
			
				|  |  | +                    </div>
 | 
	
		
			
				|  |  | +                    <div class={styles.img}>
 | 
	
		
			
				|  |  | +                      <img referrerpolicy="no-referrer" src={item.titleImg} />
 | 
	
		
			
				|  |  | +                    </div>
 | 
	
		
			
				|  |  | +                    <div class={styles.infos}>
 | 
	
		
			
				|  |  | +                      <div class={styles.topName}>
 | 
	
		
			
				|  |  | +                        <TheNoticeBar text={item.musicSheetName} />
 | 
	
		
			
				|  |  | +                      </div>
 | 
	
		
			
				|  |  | +                      <div class={styles.types}>
 | 
	
		
			
				|  |  | +                        <div class={styles.hot}>
 | 
	
		
			
				|  |  | +                          <span>{formatUsedNum(item.usedNum)}</span>
 | 
	
		
			
				|  |  | +                        </div>
 | 
	
		
			
				|  |  | +                        {item.audioPlayTypes?.includes('SING') && (
 | 
	
		
			
				|  |  | +                          <div class={styles.sing}>演唱</div>
 | 
	
		
			
				|  |  | +                        )}
 | 
	
		
			
				|  |  | +                        {item.audioPlayTypes?.includes('PLAY') && (
 | 
	
		
			
				|  |  | +                          <div class={styles.song}>演奏</div>
 | 
	
		
			
				|  |  | +                        )}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                        <div class={styles.author}>{item.composer}</div>
 | 
	
		
			
				|  |  |                        </div>
 | 
	
		
			
				|  |  | -                      <div class={styles.sing}>演唱</div>
 | 
	
		
			
				|  |  | -                      <div class={styles.song}>演奏</div>
 | 
	
		
			
				|  |  | -                      <div class={styles.author}>耶寒尔</div>
 | 
	
		
			
				|  |  |                      </div>
 | 
	
		
			
				|  |  |                    </div>
 | 
	
		
			
				|  |  | -                </div>
 | 
	
		
			
				|  |  | -              ))}
 | 
	
		
			
				|  |  | -            </NScrollbar>
 | 
	
		
			
				|  |  | -          </div>
 | 
	
		
			
				|  |  | -          <div class={[styles.section, styles.newSection]}>
 | 
	
		
			
				|  |  | -            <div class={styles.sectionTitle}>
 | 
	
		
			
				|  |  | -              <img src={newTitle} class={styles.imgTitle} />
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -              <div class={styles.moreBtn}>更多</div>
 | 
	
		
			
				|  |  | +                ))}
 | 
	
		
			
				|  |  | +              </NScrollbar>
 | 
	
		
			
				|  |  |              </div>
 | 
	
		
			
				|  |  | +            <div class={[styles.section, styles.hotSection]}>
 | 
	
		
			
				|  |  | +              <div class={styles.sectionTitle}>
 | 
	
		
			
				|  |  | +                <img src={hotTitle} class={styles.imgTitle} />
 | 
	
		
			
				|  |  | +                <div class={styles.moreBtn}>更多</div>
 | 
	
		
			
				|  |  | +              </div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            <NScrollbar>
 | 
	
		
			
				|  |  | -              {[1, 2, 3, 4, 5, 6, 7, 8, 9, 10].map(() => (
 | 
	
		
			
				|  |  | -                <div class={styles.item}>
 | 
	
		
			
				|  |  | -                  <div class={[styles.num]}>01</div>
 | 
	
		
			
				|  |  | -                  <div class={styles.img}>
 | 
	
		
			
				|  |  | -                    <img
 | 
	
		
			
				|  |  | -                      referrerpolicy="no-referrer"
 | 
	
		
			
				|  |  | -                      src="https://lanhu-oss.lanhuapp.com/SketchPnge5215a88a6a2d4a1aba30956f78102bf01fac5e63f33b045c1427d94330297dd"
 | 
	
		
			
				|  |  | -                    />
 | 
	
		
			
				|  |  | -                  </div>
 | 
	
		
			
				|  |  | -                  <div class={styles.infos}>
 | 
	
		
			
				|  |  | -                    <div class={styles.topName}>玩具兵进行曲玩具兵进行曲玩具兵进行曲玩具兵进行曲玩具兵进行曲玩具兵进行曲</div>
 | 
	
		
			
				|  |  | -                    <div class={styles.types}>
 | 
	
		
			
				|  |  | -                      <div class={styles.hot}>
 | 
	
		
			
				|  |  | -                        <span>1.8万</span>
 | 
	
		
			
				|  |  | +              <NScrollbar>
 | 
	
		
			
				|  |  | +                {state.HOT.map((item: any, index: number) => (
 | 
	
		
			
				|  |  | +                  <div
 | 
	
		
			
				|  |  | +                    class={styles.item}
 | 
	
		
			
				|  |  | +                    onClick={() => {
 | 
	
		
			
				|  |  | +                      onMore('HOT');
 | 
	
		
			
				|  |  | +                    }}>
 | 
	
		
			
				|  |  | +                    <div
 | 
	
		
			
				|  |  | +                      class={[
 | 
	
		
			
				|  |  | +                        styles.num,
 | 
	
		
			
				|  |  | +                        index === 0 ? styles.num1 : '',
 | 
	
		
			
				|  |  | +                        index === 1 ? styles.num2 : '',
 | 
	
		
			
				|  |  | +                        index === 2 ? styles.num3 : ''
 | 
	
		
			
				|  |  | +                      ]}>
 | 
	
		
			
				|  |  | +                      {(index + 1).toString().padStart(2, '0')}
 | 
	
		
			
				|  |  | +                    </div>
 | 
	
		
			
				|  |  | +                    <div class={styles.img}>
 | 
	
		
			
				|  |  | +                      <img referrerpolicy="no-referrer" src={item.titleImg} />
 | 
	
		
			
				|  |  | +                    </div>
 | 
	
		
			
				|  |  | +                    <div class={styles.infos}>
 | 
	
		
			
				|  |  | +                      <div class={styles.topName}>
 | 
	
		
			
				|  |  | +                        <TheNoticeBar text={item.musicSheetName} />
 | 
	
		
			
				|  |  | +                      </div>
 | 
	
		
			
				|  |  | +                      <div class={styles.types}>
 | 
	
		
			
				|  |  | +                        <div class={styles.hot}>
 | 
	
		
			
				|  |  | +                          <span>{formatUsedNum(item.usedNum)}</span>
 | 
	
		
			
				|  |  | +                        </div>
 | 
	
		
			
				|  |  | +                        {item.audioPlayTypes?.includes('SING') && (
 | 
	
		
			
				|  |  | +                          <div class={styles.sing}>演唱</div>
 | 
	
		
			
				|  |  | +                        )}
 | 
	
		
			
				|  |  | +                        {item.audioPlayTypes?.includes('PLAY') && (
 | 
	
		
			
				|  |  | +                          <div class={styles.song}>演奏</div>
 | 
	
		
			
				|  |  | +                        )}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                        <div class={styles.author}>{item.composer}</div>
 | 
	
		
			
				|  |  |                        </div>
 | 
	
		
			
				|  |  | -                      <div class={styles.sing}>演唱</div>
 | 
	
		
			
				|  |  | -                      <div class={styles.song}>演奏</div>
 | 
	
		
			
				|  |  | -                      <div class={styles.author}>耶寒尔</div>
 | 
	
		
			
				|  |  |                      </div>
 | 
	
		
			
				|  |  |                    </div>
 | 
	
		
			
				|  |  | -                </div>
 | 
	
		
			
				|  |  | -              ))}
 | 
	
		
			
				|  |  | -            </NScrollbar>
 | 
	
		
			
				|  |  | -          </div></> 
 | 
	
		
			
				|  |  | -        </div>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        {/* <div class={styles.sectionContainer}>
 | 
	
		
			
				|  |  | -          <div class={styles.sectionItem}>
 | 
	
		
			
				|  |  | -            <div class={styles.img}>
 | 
	
		
			
				|  |  | -              <img
 | 
	
		
			
				|  |  | -                referrerpolicy="no-referrer"
 | 
	
		
			
				|  |  | -                src="https://lanhu-oss.lanhuapp.com/SketchPnge5215a88a6a2d4a1aba30956f78102bf01fac5e63f33b045c1427d94330297dd"
 | 
	
		
			
				|  |  | -              />
 | 
	
		
			
				|  |  | +                ))}
 | 
	
		
			
				|  |  | +              </NScrollbar>
 | 
	
		
			
				|  |  |              </div>
 | 
	
		
			
				|  |  | -            <div class={styles.infos}>
 | 
	
		
			
				|  |  | -              <div class={styles.topName}>
 | 
	
		
			
				|  |  | -                <span>玩具</span>兵进行曲玩具兵进行曲玩具兵进行曲玩具兵进行曲玩具兵进行曲玩具兵进行曲
 | 
	
		
			
				|  |  | -              </div>
 | 
	
		
			
				|  |  | -              <div class={styles.types}>
 | 
	
		
			
				|  |  | -                <div class={styles.hot}>
 | 
	
		
			
				|  |  | -                  <span>1.8万</span>
 | 
	
		
			
				|  |  | -                </div>
 | 
	
		
			
				|  |  | -                <div class={styles.sing}>演唱</div>
 | 
	
		
			
				|  |  | -                <div class={styles.song}>演奏</div>
 | 
	
		
			
				|  |  | -                <div class={styles.author}>耶寒尔</div>
 | 
	
		
			
				|  |  | +            <div class={[styles.section, styles.newSection]}>
 | 
	
		
			
				|  |  | +              <div class={styles.sectionTitle}>
 | 
	
		
			
				|  |  | +                <img src={newTitle} class={styles.imgTitle} />
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                <div class={styles.moreBtn}>更多</div>
 | 
	
		
			
				|  |  |                </div>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +              <NScrollbar>
 | 
	
		
			
				|  |  | +                {state.NEW.map((item: any, index: number) => (
 | 
	
		
			
				|  |  | +                  <div
 | 
	
		
			
				|  |  | +                    class={styles.item}
 | 
	
		
			
				|  |  | +                    onClick={() => {
 | 
	
		
			
				|  |  | +                      onMore('NEW');
 | 
	
		
			
				|  |  | +                    }}>
 | 
	
		
			
				|  |  | +                    <div
 | 
	
		
			
				|  |  | +                      class={[
 | 
	
		
			
				|  |  | +                        styles.num,
 | 
	
		
			
				|  |  | +                        index === 0 ? styles.num1 : '',
 | 
	
		
			
				|  |  | +                        index === 1 ? styles.num2 : '',
 | 
	
		
			
				|  |  | +                        index === 2 ? styles.num3 : ''
 | 
	
		
			
				|  |  | +                      ]}>
 | 
	
		
			
				|  |  | +                      {(index + 1).toString().padStart(2, '0')}
 | 
	
		
			
				|  |  | +                    </div>
 | 
	
		
			
				|  |  | +                    <div class={styles.img}>
 | 
	
		
			
				|  |  | +                      <img referrerpolicy="no-referrer" src={item.titleImg} />
 | 
	
		
			
				|  |  | +                    </div>
 | 
	
		
			
				|  |  | +                    <div class={styles.infos}>
 | 
	
		
			
				|  |  | +                      <div class={styles.topName}>
 | 
	
		
			
				|  |  | +                        <TheNoticeBar text={item.musicSheetName} />
 | 
	
		
			
				|  |  | +                      </div>
 | 
	
		
			
				|  |  | +                      <div class={styles.types}>
 | 
	
		
			
				|  |  | +                        <div class={styles.hot}>
 | 
	
		
			
				|  |  | +                          <span>{formatUsedNum(item.usedNum)}</span>
 | 
	
		
			
				|  |  | +                        </div>
 | 
	
		
			
				|  |  | +                        {item.audioPlayTypes?.includes('SING') && (
 | 
	
		
			
				|  |  | +                          <div class={styles.sing}>演唱</div>
 | 
	
		
			
				|  |  | +                        )}
 | 
	
		
			
				|  |  | +                        {item.audioPlayTypes?.includes('PLAY') && (
 | 
	
		
			
				|  |  | +                          <div class={styles.song}>演奏</div>
 | 
	
		
			
				|  |  | +                        )}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                        <div class={styles.author}>{item.composer}</div>
 | 
	
		
			
				|  |  | +                      </div>
 | 
	
		
			
				|  |  | +                    </div>
 | 
	
		
			
				|  |  | +                  </div>
 | 
	
		
			
				|  |  | +                ))}
 | 
	
		
			
				|  |  | +              </NScrollbar>
 | 
	
		
			
				|  |  |              </div>
 | 
	
		
			
				|  |  |            </div>
 | 
	
		
			
				|  |  | -        </div> */}
 | 
	
		
			
				|  |  | +        )}
 | 
	
		
			
				|  |  |        </div>
 | 
	
		
			
				|  |  |      );
 | 
	
		
			
				|  |  |    }
 |