|  | @@ -75,20 +75,12 @@ const resetFrequency = (list: any[]) => {
 | 
	
		
			
				|  |  |   * 乐器指法处理
 | 
	
		
			
				|  |  |   */
 | 
	
		
			
				|  |  |  const setNoteHalfTone = (list: any[]) => {
 | 
	
		
			
				|  |  | -	const instrumentNames = ["melodica"];
 | 
	
		
			
				|  |  | +	const instrumentNames = ["hulusi-flute"];
 | 
	
		
			
				|  |  |  	if (!state.fingeringInfo?.name || !instrumentNames.includes(state.fingeringInfo.name)) return list;
 | 
	
		
			
				|  |  |  	for (let i = 0; i < list.length; i++) {
 | 
	
		
			
				|  |  |  		const note = list[i];
 | 
	
		
			
				|  |  | -		if (note.noteElement?.pitch?.accidentalXml) {
 | 
	
		
			
				|  |  | -			const accidentalXml = note.noteElement?.pitch?.accidentalXml;
 | 
	
		
			
				|  |  | -			if ([]) {
 | 
	
		
			
				|  |  | -			}
 | 
	
		
			
				|  |  | -			if (accidentalXml === "flat") {
 | 
	
		
			
				|  |  | -				// note.realKey = note.realKey + 1;
 | 
	
		
			
				|  |  | -			} else if (accidentalXml === "sharp") {
 | 
	
		
			
				|  |  | -				// note.realKey = note.realKey + 1;
 | 
	
		
			
				|  |  | -			}
 | 
	
		
			
				|  |  | -		}
 | 
	
		
			
				|  |  | +		if (note.realKey === 0) continue;
 | 
	
		
			
				|  |  | +		note.realKey = note.realKey + 12;
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  	return list;
 | 
	
		
			
				|  |  |  };
 | 
	
	
		
			
				|  | @@ -105,6 +97,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |  			headerHide: false,
 | 
	
		
			
				|  |  |  			fingerPreView: false,
 | 
	
		
			
				|  |  |  			orientation: 0,
 | 
	
		
			
				|  |  | +			fingerPreViewGuide: false,
 | 
	
		
			
				|  |  |  		});
 | 
	
		
			
				|  |  |  		const getAPPData = async () => {
 | 
	
		
			
				|  |  |  			const screenData = await isSpecialShapedScreen();
 | 
	
	
		
			
				|  | @@ -132,7 +125,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |  		//给app传伴奏
 | 
	
		
			
				|  |  |  		const pushAppMusic = () => {
 | 
	
		
			
				|  |  |  			api_cloudAccompanyMessage(state.accompany);
 | 
	
		
			
				|  |  | -		  }
 | 
	
		
			
				|  |  | +		};
 | 
	
		
			
				|  |  |  		// console.log(route.params, query)
 | 
	
		
			
				|  |  |  		/** 获取曲谱数据 */
 | 
	
		
			
				|  |  |  		const getMusicInfo = (res: any) => {
 | 
	
	
		
			
				|  | @@ -194,7 +187,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |  			// 	isRhythmicExercises();
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  			// 设置指法
 | 
	
		
			
				|  |  | -			const code = mappingVoicePart(state.subjectId, "INSTRUMENT")
 | 
	
		
			
				|  |  | +			const code = mappingVoicePart(state.subjectId, "INSTRUMENT");
 | 
	
		
			
				|  |  |  			state.fingeringInfo = subjectFingering(code);
 | 
	
		
			
				|  |  |  			console.log("🚀 ~ state.fingeringInfo:", state.fingeringInfo, state.subjectId, state.track);
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -246,7 +239,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |  			}
 | 
	
		
			
				|  |  |  			state.times = formateTimes(osmd);
 | 
	
		
			
				|  |  |  			state.times = resetFrequency(state.times);
 | 
	
		
			
				|  |  | -			// state.times = setNoteHalfTone(state.times);
 | 
	
		
			
				|  |  | +			state.times = setNoteHalfTone(state.times);
 | 
	
		
			
				|  |  |  			console.log("🚀 ~ state.times:", state.times, state.subjectId);
 | 
	
		
			
				|  |  |  			try {
 | 
	
		
			
				|  |  |  				metronomeData.metro = new Metronome();
 | 
	
	
		
			
				|  | @@ -341,16 +334,19 @@ export default defineComponent({
 | 
	
		
			
				|  |  |  			}
 | 
	
		
			
				|  |  |  		);
 | 
	
		
			
				|  |  |  		/** 指法预览切换 */
 | 
	
		
			
				|  |  | -		watch(() => detailData.fingerPreView, () => {
 | 
	
		
			
				|  |  | -			console.log(2342)
 | 
	
		
			
				|  |  | -			window.parent.postMessage(
 | 
	
		
			
				|  |  | -				{
 | 
	
		
			
				|  |  | -					api: "api_fingerPreView",
 | 
	
		
			
				|  |  | -					state: detailData.fingerPreView,
 | 
	
		
			
				|  |  | -				},
 | 
	
		
			
				|  |  | -				"*"
 | 
	
		
			
				|  |  | -			);
 | 
	
		
			
				|  |  | -		})
 | 
	
		
			
				|  |  | +		watch(
 | 
	
		
			
				|  |  | +			() => detailData.fingerPreView,
 | 
	
		
			
				|  |  | +			() => {
 | 
	
		
			
				|  |  | +				console.log(2342);
 | 
	
		
			
				|  |  | +				window.parent.postMessage(
 | 
	
		
			
				|  |  | +					{
 | 
	
		
			
				|  |  | +						api: "api_fingerPreView",
 | 
	
		
			
				|  |  | +						state: detailData.fingerPreView,
 | 
	
		
			
				|  |  | +					},
 | 
	
		
			
				|  |  | +					"*"
 | 
	
		
			
				|  |  | +				);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +		);
 | 
	
		
			
				|  |  |  		onMounted(() => {
 | 
	
		
			
				|  |  |  			window.addEventListener("resize", resetMusicScore);
 | 
	
		
			
				|  |  |  		});
 | 
	
	
		
			
				|  | @@ -373,13 +369,13 @@ export default defineComponent({
 | 
	
		
			
				|  |  |  			// 	url: url,
 | 
	
		
			
				|  |  |  			// 	orientation: state.fingeringInfo.orientation || 0,
 | 
	
		
			
				|  |  |  			// });
 | 
	
		
			
				|  |  | -			
 | 
	
		
			
				|  |  | -			if (state.playState === 'play') {
 | 
	
		
			
				|  |  | -				togglePlay('paused')
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +			if (state.playState === "play") {
 | 
	
		
			
				|  |  | +				togglePlay("paused");
 | 
	
		
			
				|  |  |  				setTimeout(() => {
 | 
	
		
			
				|  |  |  					detailData.fingerPreView = true;
 | 
	
		
			
				|  |  | -				}, 500)
 | 
	
		
			
				|  |  | -				return
 | 
	
		
			
				|  |  | +				}, 500);
 | 
	
		
			
				|  |  | +				return;
 | 
	
		
			
				|  |  |  			}
 | 
	
		
			
				|  |  |  			detailData.fingerPreView = true;
 | 
	
		
			
				|  |  |  		};
 | 
	
	
		
			
				|  | @@ -388,6 +384,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |  				api_setRequestedOrientation(0);
 | 
	
		
			
				|  |  |  			}
 | 
	
		
			
				|  |  |  			detailData.fingerPreView = false;
 | 
	
		
			
				|  |  | +			detailData.fingerPreViewGuide = false;
 | 
	
		
			
				|  |  |  		};
 | 
	
		
			
				|  |  |  		return () => (
 | 
	
		
			
				|  |  |  			<div
 | 
	
	
		
			
				|  | @@ -476,8 +473,16 @@ export default defineComponent({
 | 
	
		
			
				|  |  |  					</>
 | 
	
		
			
				|  |  |  				)}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -				<Popup teleport="body" v-model:show={detailData.fingerPreView} position="bottom">
 | 
	
		
			
				|  |  | +				<Popup
 | 
	
		
			
				|  |  | +					teleport="body"
 | 
	
		
			
				|  |  | +					v-model:show={detailData.fingerPreView}
 | 
	
		
			
				|  |  | +					position="bottom"
 | 
	
		
			
				|  |  | +					onOpened={() => {
 | 
	
		
			
				|  |  | +						detailData.fingerPreViewGuide = true;
 | 
	
		
			
				|  |  | +					}}
 | 
	
		
			
				|  |  | +				>
 | 
	
		
			
				|  |  |  					<ViewFigner
 | 
	
		
			
				|  |  | +						show={detailData.fingerPreViewGuide}
 | 
	
		
			
				|  |  |  						subject={state.fingeringInfo.name}
 | 
	
		
			
				|  |  |  						isComponent={true}
 | 
	
		
			
				|  |  |  						onClose={handleCloseFignerView}
 |