Files
ueblueprint/js/UEBlueprintDOMModel.js
barsdeveloper 02e8e6e8af Initial commit
2021-06-29 16:26:39 +02:00

36 lines
864 B
JavaScript

export default class UEBlueprintDOMModel {
static dummyDiv = document.createElement('div')
static domTemplate(obj) {
return ``
}
constructor() {
this.domElement = null
}
createDOMElement() {
if (this.domElement) {
this.removeDOMElement()
}
this.constructor.dummyDiv.innerHTML = this.constructor.domTemplate(this)
this.domElement = this.constructor.dummyDiv.removeChild(this.constructor.dummyDiv.firstElementChild)
}
getDOMElement() {
if (!this.domElement) {
this.createDOMElement()
}
return this.domElement
}
removeDOMElement() {
if (!this.domElement) {
return false
}
this.domElement.parentElement.removeChild(this.domElement)
this.domElement = null
return true
}
}