Free and Open source Web Builder Framework. Next generation tool for building templates without coding
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

4.5 KiB

Storage

You can customize the initial state of the module from the editor initialization, by passing the following Configuration Object

const editor = grapesjs.init({
 storageManager: {
   // options
 }
})

Once the editor is instantiated you can use its API and listen to its events. Before using these methods, you should get the module from the instance.

// Listen to events
editor.on('storage:start', () => { ... });

// Use the API
const storageManager = editor.Storage;
storageManager.add(...);

Available Events

  • storage:start - Before the storage request is started
  • storage:start:store - Before the store request. The object to store is passed as an argumnet (which you can edit)
  • storage:start:load - Before the load request. Items to load are passed as an argumnet (which you can edit)
  • storage:load - Triggered when something was loaded from the storage, loaded object passed as an argumnet
  • storage:store - Triggered when something is stored to the storage, stored object passed as an argumnet
  • storage:end - After the storage request is ended
  • storage:end:store - After the store request
  • storage:end:load - After the load request
  • storage:error - On any error on storage request, passes the error as an argument
  • storage:error:store - Error on store request, passes the error as an argument
  • storage:error:load - Error on load request, passes the error as an argument

Methods

getConfig

Get configuration object

Returns Object

isAutosave

Check if autosave is enabled.

Returns Boolean

setAutosave

Set autosave value.

Parameters

getStepsBeforeSave

Returns number of steps required before trigger autosave.

Returns Number

setStepsBeforeSave

Set steps required before trigger autosave.

Parameters

add

Add new storage.

Parameters

Examples

storageManager.add('local2', {
  async load(storageOptions) {
    // ...
  },
  async store(data, storageOptions) {
    // ...
  },
});

get

Return storage by type.

Parameters

Returns (Object | null)

getStorages

Get all storages.

Returns Object

getCurrent

Get current storage type.

Returns String

setCurrent

Set current storage type.

Parameters

getStorageOptions

Get storage options by type.

Parameters

Returns Object

store

Store data in the current storage.

Parameters

  • data Object Project data.
  • options Object? Storage options. (optional, default {})

Examples

const data = editor.getProjectData();
await storageManager.store(data);

Returns Object Stored data.

load

Load resource from the current storage by keys

Parameters

  • options Object? Storage options. (optional, default {})

Examples

const data = await storageManager.load();
editor.loadProjectData(data);

Returns Object Loaded data.