From d7ebc10c0d771f742f653c8f267aff2f6bb2d2ef Mon Sep 17 00:00:00 2001 From: Kelvin Zhang Date: Sat, 28 Aug 2021 19:00:23 -0700 Subject: [PATCH] Cancel polling task after component unmount Test: th Change-Id: I0d9058bd24236ea1e22bf91f98b2dbadc83cf8d3 --- tools/otagui/src/views/JobDetails.vue | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/tools/otagui/src/views/JobDetails.vue b/tools/otagui/src/views/JobDetails.vue index 515d1404c..56b6e55fc 100644 --- a/tools/otagui/src/views/JobDetails.vue +++ b/tools/otagui/src/views/JobDetails.vue @@ -67,6 +67,7 @@ export default { data() { return { job: null, + pending_task: null, } }, computed: { @@ -77,6 +78,12 @@ export default { created() { this.updateStatus() }, + unmounted() { + if (this.pending_task) { + clearTimeout(this.pending_task); + this.pending_task = null; + } + }, methods: { async updateStatus() { // fetch job (by id) and set local job data @@ -101,7 +108,7 @@ export default { console.log(err) } if (this.job.status == 'Running') { - setTimeout(this.updateStatus, 1000) + this.pending_task = setTimeout(this.updateStatus, 1000) } }, updateConfig() {