---
title: "Class: EditorLoader | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/classes/EditorLoader.EditorLoader/"
---

# Class: EditorLoader

> > **new EditorLoader**(`iframe`, `editorData`, `editorUrl`): `EditorLoader`

## Constructors

### Constructor

#### Parameters

##### iframe

`HTMLIFrameElement`

##### editorData

[`IEditorData`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/EditorLoader.EditorLoader.IEditorData.md) \| [`QueryString`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/classes/IframeApi.QueryString.md)

##### editorUrl

`string`

#### Returns

`EditorLoader`

## Methods

### preload()

> `static` **preload**(`editorUrl`): [`Promise`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/finally.Promise.md)\<`void`\>

#### Parameters

##### editorUrl

`string`

#### Returns

[`Promise`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/finally.Promise.md)\<`void`\>

***

### start()

> **start**(`onFirstLoad?`): [`Promise`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/finally.Promise.md)\<[`Editor`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/classes/Editor.Editor.md)\>

#### Parameters

##### onFirstLoad?

() => `void`

#### Returns

[`Promise`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/finally.Promise.md)\<[`Editor`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/classes/Editor.Editor.md)\>

***

### dispose()

> **dispose**(): `void`

#### Returns

`void`

***

### getInitData()

> `static` **getInitData**(`editorUrl`, `productDefinition`, `configFromApi`, `onFirstTemplateLoad?`, `hasExternalMockup?`, `requestDataMode?`, `restRequestKey?`): [`Promise`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/finally.Promise.md)\<`string`\>

#### Parameters

##### editorUrl

`string`

##### productDefinition

`string`[] \| [`IProductDefinition`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ObjectModel.IProductDefinition.md)

##### configFromApi

[`IConfiguration`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ConfigurationInterfaces.IConfiguration.md)

##### onFirstTemplateLoad?

() => `void`

##### hasExternalMockup?

`boolean` = `false`

##### requestDataMode?

[`RequestDataMode`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/enums/IConfigRequestData.RequestDataMode.md) = `RequestDataMode.Whole`

##### restRequestKey?

`string` = `null`

#### Returns

[`Promise`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/finally.Promise.md)\<`string`\>

***

### getInitDataByQueryString()

> `static` **getInitDataByQueryString**(`editorUrl`, `queryString`, `onFirstTemplateLoad?`): [`Promise`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/finally.Promise.md)\<`string`\>

#### Parameters

##### editorUrl

`string`

##### queryString

`string`

##### onFirstTemplateLoad?

() => `void`

#### Returns

[`Promise`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/finally.Promise.md)\<`string`\>
