فهرست منبع

feat: 作业选段api新增参数

TIANYONG 6 ماه پیش
والد
کامیت
f0d89d5313
1فایلهای تغییر یافته به همراه10 افزوده شده و 2 حذف شده
  1. 10 2
      src/views/choose-homework/music-list/index.tsx

+ 10 - 2
src/views/choose-homework/music-list/index.tsx

@@ -306,16 +306,24 @@ export default defineComponent({
       });
       });
       const xmlParse = new DOMParser().parseFromString(res, 'text/xml');
       const xmlParse = new DOMParser().parseFromString(res, 'text/xml');
       const parts = xmlParse.getElementsByTagName('part');
       const parts = xmlParse.getElementsByTagName('part');
-      const firstMeasures = parts[0]?.getElementsByTagName('measure');
+      // 找到正确的part,妙极客的曲子有些无效的part需要过滤掉
+      const realPart = Array.from(parts).find((part: any) => part?.parentElement?.tagName !== 'system') || parts[0];
+      const firstMeasures = realPart?.getElementsByTagName('measure');
+      // 增加开始小节,结束小节数
+      const startMeasureNumber = firstMeasures[0]?.getAttribute('number') ? Number(firstMeasures[0]?.getAttribute('number')) : 0;
+      const endMeasureNumber = firstMeasures[firstMeasures.length-1]?.getAttribute('number') ? Number(firstMeasures[firstMeasures.length-1]?.getAttribute('number')) : firstMeasures.length;
       const body = {
       const body = {
         api: 'onAccompanySelectResult',
         api: 'onAccompanySelectResult',
         content: {
         content: {
           id: _id,
           id: _id,
           name: row.name,
           name: row.name,
           noteLength: firstMeasures.length,
           noteLength: firstMeasures.length,
-          partIndex: this.selectedPartIndex + ''
+          partIndex: this.selectedPartIndex + '',
+          startMeasureNumber,
+          endMeasureNumber
         }
         }
       };
       };
+      // console.log('小节',body.content)
       postMessage(body);
       postMessage(body);
       return;
       return;
       // }
       // }