From ef2856d169cac35ad97588adca11fa46f4f5ce92 Mon Sep 17 00:00:00 2001 From: Gaetan Craig-Riou Date: Mon, 26 Aug 2024 11:15:26 +1000 Subject: [PATCH] Remove added eventListener on disconnect It's good practise to remove added event listener to avoid memory leak --- app/webpacker/controllers/trixeditor_controller.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/webpacker/controllers/trixeditor_controller.js b/app/webpacker/controllers/trixeditor_controller.js index 0f367ce6be..e386352361 100644 --- a/app/webpacker/controllers/trixeditor_controller.js +++ b/app/webpacker/controllers/trixeditor_controller.js @@ -7,6 +7,11 @@ export default class extends Controller { this.element.addEventListener("trix-initialize", this.#trixInitialize); } + disconnect() { + this.element.removeEventListener("trix-change", this.#trixChange); + this.element.removeEventListener("trix-initialize", this.#trixInitialize); + } + #trixChange = (event) => { // trigger a change event on the form that contains the Trix editor event.target.form.dispatchEvent(new Event("change", { bubbles: true }));