Bläddra i källkod

feat: 打印渲染时间

TIANYONG 1 år sedan
förälder
incheckning
7c154a2b93
2 ändrade filer med 25 tillägg och 2 borttagningar
  1. 23 1
      src/helpers/formateMusic.ts
  2. 2 1
      src/page-instrument/view-detail/index.tsx

+ 23 - 1
src/helpers/formateMusic.ts

@@ -852,7 +852,28 @@ export const formateTimes = (osmd: OpenSheetMusicDisplay) => {
 			if (metronomeNoteIndex !== 0 && metronomeNoteIndex > si) {
 				measureSpeed = allNotes[allNotes.length - 1]?.speed || 100;
 			}
-			const activeVerticalMeasureList = [note.sourceMeasure.verticalMeasureList?.[0]] || [];
+			// 当前的分轨
+			let activeVerticalMeasureList: any = [];
+			/**
+			 * bug: #9959
+			 * 多分轨合并展示,第一分轨又可能获取不到对应的音符,需要在当前小节中音符最多的分轨中去查找音符
+			 */
+			// if (state.isCombineRender) {
+			// 	const allTrackList = note.sourceMeasure.verticalMeasureList;
+			// 	let maxIdx = 0, maxNote = 0;
+			// 	allTrackList.forEach((item: any, index: number) => {
+			// 		if (item?.vfVoices['1']?.tickables?.length > maxNote) {
+			// 			maxIdx = index
+			// 			maxNote = item?.vfVoices['1']?.tickables?.length
+			// 		}
+			// 	})
+			// 	activeVerticalMeasureList = [note.sourceMeasure?.verticalMeasureList?.[maxIdx]] || [];
+			// } else {
+			// 	activeVerticalMeasureList = [note.sourceMeasure?.verticalMeasureList?.[0]] || [];
+			// }
+			
+			activeVerticalMeasureList = [note.sourceMeasure?.verticalMeasureList?.[0]] || [];
+
 			const { realValue } = iterator.currentTimeStamp;
 			const { RealValue: vRealValue, Denominator: vDenominator } = formatDuration(
 				iterator.currentMeasure.activeTimeSignature,
@@ -976,6 +997,7 @@ export const formateTimes = (osmd: OpenSheetMusicDisplay) => {
 			const fixedKey = note.fixedKey || 0;
 			// const svgElement = activeVerticalMeasureList[0]?.vfVoices["1"]?.tickables[si];
 			const svgElement = activeVerticalMeasureList[0]?.vfVoices['1']?.tickables[staveNoteIndex];
+
 			// console.log('si',si,i)
 			// console.log(note.sourceMeasure.MeasureNumberXML,note,svgElement, NoteRealValue, measureLength)
 			if (allNotes.length && allNotes[allNotes.length - 1].relativeTime === relativeTime) {

+ 2 - 1
src/page-instrument/view-detail/index.tsx

@@ -146,6 +146,7 @@ export default defineComponent({
     /** 渲染完成 */
     const handleRendered = (osmd: any) => {
       api_cloudLoading();
+      console.timeEnd("渲染加载耗时");
       detailData.skeletonLoading = false;
       state.osmd = osmd;
       // 没有设置速度使用读取的速度
@@ -190,7 +191,7 @@ export default defineComponent({
       resetPlaybackToStart();
 
       // pushAppMusic();
-      console.timeEnd("渲染加载耗时");
+      // console.timeEnd("渲染加载耗时");
     };
     /** 指法配置 */
     const fingerConfig = computed<any>(() => {