Browse Source

fix: #9517 bug修复

TIANYONG 1 năm trước cách đây
mục cha
commit
25bae45ccc

+ 6 - 1
src/page-instrument/evaluat-model/evaluat-result/index.tsx

@@ -16,6 +16,7 @@ import { getQuery } from "/src/utils/queryString";
 import { browser, getBehaviorId } from "/src/utils";
 import { api_musicPracticeRecordSave } from "../../api";
 import { getAudioDuration } from "/src/view/audio-list";
+import { debounce } from "/src/utils"
 
 export default defineComponent({
 	name: "evaluatResult",
@@ -56,6 +57,10 @@ export default defineComponent({
 			data.saveLoading = false;
 		};
 
+		const saveResult = () => {
+			emit("close", "update")
+		}
+
 		onMounted(() => {
 			if (!evaluatingData.isErrorState) {
 				handleAddRecord();
@@ -81,7 +86,7 @@ export default defineComponent({
 				{
 				!state.isHideEvaluatReportSaveBtn &&
 				<div class={styles.headerButton}>
-					<div class={[styles.headBtn, evaluatingData.resultData.recordId ? '' : styles.disabled]} onClick={() => emit("close", "update")}>
+					<div class={[styles.headBtn, evaluatingData.resultData.recordId ? '' : styles.disabled]} onClick={debounce(saveResult,1000)}>
 						保存演奏
 					</div>
 				</div>

+ 10 - 0
src/utils/index.ts

@@ -143,4 +143,14 @@ export const matchProductApiUrl = () => {
 		}
 		return apiUrls[pathName][environment] + '/edu-app'
 	}
+}
+
+/** debounce */
+export const debounce = (fn: Function, ms = 0) => {
+	let timeoutId: number | undefined;
+	return function(...args: any[]) {
+	  clearTimeout(timeoutId)
+	  // @ts-ignore
+	  timeoutId = setTimeout(() => fn.apply(this, args), ms);
+	}
 }