diff options
Diffstat (limited to 'js/src/base-component.js')
| -rw-r--r-- | js/src/base-component.js | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/js/src/base-component.js b/js/src/base-component.js index 588a59d75..eacc8420b 100644 --- a/js/src/base-component.js +++ b/js/src/base-component.js @@ -35,7 +35,7 @@ class BaseComponent { dispose() { Data.remove(this._element, this.constructor.DATA_KEY) - EventHandler.off(this._element, `.${this.constructor.DATA_KEY}`) + EventHandler.off(this._element, this.constructor.EVENT_KEY) Object.getOwnPropertyNames(this).forEach(propertyName => { this[propertyName] = null @@ -63,6 +63,18 @@ class BaseComponent { static get VERSION() { return VERSION } + + static get NAME() { + throw new Error('You have to implement the static method "NAME", for each component!') + } + + static get DATA_KEY() { + return `bs.${this.NAME}` + } + + static get EVENT_KEY() { + return `.${this.DATA_KEY}` + } } export default BaseComponent |
