mapcomplete/UI/Base/Lazy.ts
2021-11-07 16:34:51 +01:00

16 lines
No EOL
429 B
TypeScript

import BaseUIElement from "../BaseUIElement";
export default class Lazy extends BaseUIElement {
private readonly _f: () => BaseUIElement;
constructor(f: () => BaseUIElement) {
super();
this._f = f;
}
protected InnerConstructElement(): HTMLElement {
// The caching of the BaseUIElement will guarantee that _f will only be called once
return this._f().ConstructElement();
}
}