@yuju/tosspayments-sdk
Version:
Toss Payments SDK for Node.js
29 lines (28 loc) • 715 B
JavaScript
export class LazyLoader {
constructor(provider) {
Object.defineProperty(this, "provider", {
enumerable: true,
configurable: true,
writable: true,
value: provider
});
Object.defineProperty(this, "value", {
enumerable: true,
configurable: true,
writable: true,
value: null
});
Object.defineProperty(this, "loaded", {
enumerable: true,
configurable: true,
writable: true,
value: false
});
}
get() {
if (!this.loaded) {
this.value = this.provider();
}
return this.value;
}
}