Add emitter.off cleanup in onBeforeUnmount for 10 components

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-09 18:04:43 +08:00
parent b023d28b74
commit d3bba9d1a2
10 changed files with 66 additions and 11 deletions

View File

@@ -40,7 +40,7 @@
* Checkbox-based activity list for conformance checking input.
*/
import { ref, watch } from "vue";
import { ref, watch, onBeforeUnmount } from "vue";
import { sortNumEngZhtw } from "@/module/sortNumEngZhtw.js";
import emitter from "@/utils/emitter";
@@ -73,4 +73,8 @@ function actListData() {
emitter.on("reset", (data) => {
actList.value = data;
});
onBeforeUnmount(() => {
emitter.off("reset");
});
</script>

View File

@@ -41,7 +41,7 @@
* start/end activity input.
*/
import { ref, computed, watch } from "vue";
import { ref, computed, watch, onBeforeUnmount } from "vue";
import { useConformanceInputStore } from "@/stores/conformanceInput";
import { sortNumEngZhtw } from "@/module/sortNumEngZhtw.js";
import emitter from "@/utils/emitter";
@@ -109,4 +109,8 @@ emitter.on("reset", (data) => {
selectedRadio.value = data;
});
setGlobalActivityRadioDataState();
onBeforeUnmount(() => {
emitter.off("reset");
});
</script>

View File

@@ -115,7 +115,7 @@
* conformance rule configuration.
*/
import { ref, computed } from "vue";
import { ref, computed, onBeforeUnmount } from "vue";
import { sortNumEngZhtw } from "@/module/sortNumEngZhtw.js";
import emitter from "@/utils/emitter";
@@ -200,6 +200,10 @@ listSequence.value = props.isSubmit ? newlist : [];
emitter.on("reset", (data) => {
listSequence.value = [];
});
onBeforeUnmount(() => {
emitter.off("reset");
});
</script>
<style scoped>
@reference "../../../../assets/tailwind.css";

View File

@@ -356,7 +356,7 @@
* check result statistics.
*/
import { ref, computed, watch } from "vue";
import { ref, computed, watch, onBeforeUnmount } from "vue";
import { storeToRefs } from "pinia";
import { useLoadingStore } from "@/stores/loading";
import { useConformanceStore } from "@/stores/conformance";
@@ -755,4 +755,13 @@ emitter.on("isRadioActSeqFromToChange", (data) => {
emitter.on("reset", (data) => {
reset();
});
onBeforeUnmount(() => {
emitter.off("isRadioChange");
emitter.off("isRadioSeqChange");
emitter.off("isRadioProcessScopeChange");
emitter.off("isRadioActSeqMoreChange");
emitter.off("isRadioActSeqFromToChange");
emitter.off("reset");
});
</script>

View File

@@ -235,7 +235,7 @@
* configuration with calendar inputs.
*/
import { reactive } from "vue";
import { reactive, onBeforeUnmount } from "vue";
import { storeToRefs } from "pinia";
import { useConformanceStore } from "@/stores/conformance";
import emitter from "@/utils/emitter";
@@ -672,4 +672,13 @@ emitter.on("isRadioActSeqFromToChange", (data) => {
reset();
}
});
onBeforeUnmount(() => {
emitter.off("actRadioData");
emitter.off("reset");
emitter.off("isRadioChange");
emitter.off("isRadioProcessScopeChange");
emitter.off("isRadioActSeqMoreChange");
emitter.off("isRadioActSeqFromToChange");
});
</script>

View File

@@ -29,7 +29,7 @@
* matched activities.
*/
import { ref, watch } from "vue";
import { ref, watch, onBeforeUnmount } from "vue";
import emitter from "@/utils/emitter";
const props = defineProps(["data", "select"]);
@@ -51,4 +51,8 @@ watch(
);
emitter.on("reset", (val) => (displayData.value = val));
onBeforeUnmount(() => {
emitter.off("reset");
});
</script>

View File

@@ -29,7 +29,7 @@
* and task pairs.
*/
import { ref, watch } from "vue";
import { ref, watch, onBeforeUnmount } from "vue";
import emitter from "@/utils/emitter";
const props = defineProps(["timeResultData", "select"]);
@@ -45,4 +45,8 @@ watch(
);
emitter.on("reset", (val) => (data.value = val));
onBeforeUnmount(() => {
emitter.off("reset");
});
</script>