Browse Source

feat: 五线谱、简谱&单行谱、多行谱切换暂时使用安放二:页面整体刷新

TIANYONG 1 year ago
parent
commit
7bd7c325bb

+ 9 - 2
src/page-instrument/header-top/settting/index.tsx

@@ -6,6 +6,7 @@ import { Switch, showToast, Field, Popup } from "vant";
 import state from "/src/state"
 import { smoothAnimationState} from "/src/page-instrument/view-detail/smoothAnimation"
 import Recommendation from "../../custom-plugins/helper-model/recommendation";
+import { resetRenderMusicScore } from "/src/view/music-score";
 
 export default defineComponent({
 	name: "settting",
@@ -72,7 +73,10 @@ export default defineComponent({
                             <div class={styles.radioBox}>
                                 {
                                     [{name:'单行谱',value:true},{name:'多行谱',value:false}].map(item=>{
-                                        return <div class={ state.isSingleLine===item.value && styles.active } onClick={ ()=>{ state.isSingleLine = item.value } }>{item.name}</div>
+                                        return <div class={ state.isSingleLine===item.value && styles.active } onClick={ ()=>{ 
+                                            state.isSingleLine = item.value 
+                                            resetRenderMusicScore(state.musicRenderType)
+                                        } }>{item.name}</div>
                                     })
                                 }
                             </div>
@@ -82,7 +86,10 @@ export default defineComponent({
                             <div class={styles.radioBox}>
                                 {
                                     [{name:'五线谱',value:'staff'},{name:'首调',value:'firstTone'},{name:'固定谱',value:'fixedTone'}].map(item=>{
-                                        return <div class={ state.musicRenderType===item.value && styles.active } onClick={ ()=>{ state.musicRenderType = item.value as any} }>{item.name}</div>
+                                        return <div class={ state.musicRenderType===item.value && styles.active } onClick={ ()=>{ 
+                                            state.musicRenderType = item.value as any
+                                            resetRenderMusicScore(state.musicRenderType)
+                                        } }>{item.name}</div>
                                     })
                                 }
                             </div>

+ 2 - 1
src/view/music-score/index.tsx

@@ -25,7 +25,8 @@ export const resetRenderMusicScore = (type?: string) => {
 	const newSearch = queryString.stringify({
 		...search,
 		_t: Date.now(),
-		musicRenderType: type
+		musicRenderType: type,
+		isSingleLine: state.isSingleLine
 	});
 	location.search = "?" + newSearch;
 };