diff --git a/docs/index.html b/docs/index.html
index 133c189..0ada384 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -301,7 +301,7 @@
chart.export();
// Unbind window-resize events
- chart.unbindWindowEvents();
+ chart.destroy();
diff --git a/src/js/charts/BaseChart.js b/src/js/charts/BaseChart.js
index e7f6d3f..aaf72e9 100644
--- a/src/js/charts/BaseChart.js
+++ b/src/js/charts/BaseChart.js
@@ -7,8 +7,6 @@ import { getColor, isValidColor } from '../utils/colors';
import { runSMILAnimation } from '../utils/animation';
import { downloadFile, prepareForExport } from '../utils/export';
-let BOUND_DRAW_FN;
-
export default class BaseChart {
constructor(parent, options) {
@@ -89,18 +87,15 @@ export default class BaseChart {
this.height = height - getExtraHeight(this.measures);
// Bind window events
- BOUND_DRAW_FN = this.boundDrawFn.bind(this);
- window.addEventListener('resize', BOUND_DRAW_FN);
- window.addEventListener('orientationchange', this.boundDrawFn.bind(this));
- }
-
- boundDrawFn() {
- this.draw(true);
+ this.boundDrawFn = () => this.draw(true);
+ window.addEventListener('resize', this.boundDrawFn);
+ window.addEventListener('orientationchange', this.boundDrawFn);
}
- unbindWindowEvents() {
- window.removeEventListener('resize', BOUND_DRAW_FN);
- window.removeEventListener('orientationchange', this.boundDrawFn.bind(this));
+ destroy() {
+ // Unbind window events
+ window.removeEventListener('resize', this.boundDrawFn);
+ window.removeEventListener('orientationchange', this.boundDrawFn);
}
// Has to be called manually