Selaa lähdekoodia

event removal

Raanan Weber 7 vuotta sitten
vanhempi
commit
23bcc59b5c

+ 0 - 1
Viewer/src/index.ts

@@ -23,7 +23,6 @@ PromisePolyfill.Apply();
 
 export let disableInit: boolean = false;
 document.addEventListener("DOMContentLoaded", init);
-
 function init(event) {
     document.removeEventListener("DOMContentLoaded", init);
     if (disableInit) return;

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 8 - 8
dist/preview release/viewer/babylon.viewer.js


+ 15 - 2
dist/preview release/viewer/babylon.viewer.max.js

@@ -94565,11 +94565,13 @@ var initializer_1 = __webpack_require__(34);
 exports.InitTags = initializer_1.InitTags;
 babylonjs_1.PromisePolyfill.Apply();
 exports.disableInit = false;
-document.addEventListener("DOMContentLoaded", function (event) {
+document.addEventListener("DOMContentLoaded", init);
+function init(event) {
+    document.removeEventListener("DOMContentLoaded", init);
     if (exports.disableInit)
         return;
     initializer_1.InitTags();
-});
+}
 
 
 /***/ }),
@@ -94871,6 +94873,11 @@ var Template = (function () {
         this.loadRequests.forEach(function (request) {
             request.abort();
         });
+        if (this.registeredEvents) {
+            this.registeredEvents.forEach(function (evt) {
+                evt.htmlElement.removeEventListener(evt.eventName, evt.function);
+            });
+        }
         delete this.fragment;
     };
     Template.prototype.getTemplateAsHtml = function (templateConfig) {
@@ -94920,7 +94927,13 @@ var Template = (function () {
                         _this.onEventTriggered.notifyObservers({ event: event, template: _this, selector: selector });
                     };
                     if (typeof this_1._configuration.events[eventName] === 'boolean') {
+                        var binding = functionToFire_1.bind(this_1, '#' + this_1.parent.id);
                         this_1.parent.addEventListener(eventName, functionToFire_1.bind(this_1, '#' + this_1.parent.id), false);
+                        this_1.registeredEvents.push({
+                            htmlElement: this_1.parent,
+                            eventName: eventName,
+                            function: binding
+                        });
                     }
                     else if (typeof this_1._configuration.events[eventName] === 'object') {
                         var selectorsArray = Object.keys(this_1._configuration.events[eventName] || {});