|  | @@ -58,6 +58,9 @@ const formatTimes = () => {
 | 
	
		
			
				|  |  |    let skip = false
 | 
	
		
			
				|  |  |    const datas = []
 | 
	
		
			
				|  |  |    let times = detailState.times
 | 
	
		
			
				|  |  | +  // 阶段评测前一个节拍的标示
 | 
	
		
			
				|  |  | +  let preLyricsContent = ''
 | 
	
		
			
				|  |  | +  let preTimes = []
 | 
	
		
			
				|  |  |    if (unitTestData.isSelectMeasureMode) {
 | 
	
		
			
				|  |  |      const startIndex = detailState.times.findIndex(
 | 
	
		
			
				|  |  |        (n: any) => n.NoteToGraphicalNoteObjectId == detailState.section[0].NoteToGraphicalNoteObjectId
 | 
	
	
		
			
				|  | @@ -68,9 +71,28 @@ const formatTimes = () => {
 | 
	
		
			
				|  |  |      times = detailState.times.filter((n: any, index: number) => {
 | 
	
		
			
				|  |  |        return index >= startIndex && index <= endIndex
 | 
	
		
			
				|  |  |      })
 | 
	
		
			
				|  |  | +    preTimes = detailState.times.filter((n: any, index: number) => {
 | 
	
		
			
				|  |  | +      return index < startIndex
 | 
	
		
			
				|  |  | +    })
 | 
	
		
			
				|  |  |      starTime = times[0].sourceRelativeTime || times[0].relativeTime
 | 
	
		
			
				|  |  |      // console.log("🚀 ~ times", times)
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  | +  // 找到阶段评测,开始小节前面最近的是play或者listen的小节
 | 
	
		
			
				|  |  | +  if (preTimes.length) {
 | 
	
		
			
				|  |  | +    for (let index = preTimes.length-1; index >= 0; index--) {
 | 
	
		
			
				|  |  | +      const item = times[index]
 | 
	
		
			
				|  |  | +      const note = getNoteByMeasuresSlursStart(item)
 | 
	
		
			
				|  |  | +      if (note.formatLyricsEntries.contains('Play') || note.formatLyricsEntries.contains('Play...')) {
 | 
	
		
			
				|  |  | +        preLyricsContent = 'Play'
 | 
	
		
			
				|  |  | +        break
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      if (note.formatLyricsEntries.contains('Listen')) {
 | 
	
		
			
				|  |  | +        preLyricsContent = 'Listen'
 | 
	
		
			
				|  |  | +        break
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +    preLyricsContent = preLyricsContent ? preLyricsContent : 'Play'
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  |    let measureIndex = -1
 | 
	
		
			
				|  |  |    let recordMeasure = -1
 | 
	
		
			
				|  |  |    for (let index = 0; index < times.length; index++) {
 | 
	
	
		
			
				|  | @@ -83,6 +105,11 @@ const formatTimes = () => {
 | 
	
		
			
				|  |  |      const isStaccato =
 | 
	
		
			
				|  |  |        typeof note.voiceEntry.isStaccato === 'function' ? note.voiceEntry.isStaccato() : note.voiceEntry.isStaccato
 | 
	
		
			
				|  |  |      const noteRate = isStaccato ? 0.5 : 1
 | 
	
		
			
				|  |  | +    // console.log('注脚', note.formatLyricsEntries)
 | 
	
		
			
				|  |  | +    // 如果阶段评测,开始小节没有注脚,则取前面最近的小节的注脚
 | 
	
		
			
				|  |  | +    if (index == 0 && !note.formatLyricsEntries.length) {
 | 
	
		
			
				|  |  | +      ListenMode = preLyricsContent === 'Play' ? false : preLyricsContent === 'Listen' ? true : false
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |      if (note.formatLyricsEntries.contains('Play') || note.formatLyricsEntries.contains('Play...')) {
 | 
	
		
			
				|  |  |        ListenMode = false
 | 
	
		
			
				|  |  |      }
 |