4.0 KiB
Modal
You can customize the initial state of the module from the editor initialization, by passing the following Configuration Object
const editor = grapesjs.init({
modal: {
// options
}
})
Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance
const modal = editor.Modal;
Available Events
modal:openModal is opened
editor.on('modal:open', () => { ... });
modal:closeModal is closed
editor.on('modal:close', () => { ... });
modalEvent triggered on any change related to the modal. An object containing all the available data about the triggered event is passed as an argument to the callback.
editor.on('modal', ({ open, title, content, ... }) => { ... });
Methods
open
Open the modal window
Parameters
-
optsObject Options (optional, default{})opts.title(String | HTMLElement)? Title to set for the modalopts.content(String | HTMLElement)? Content to set for the modalopts.attributesObject? Updates the modal wrapper with custom attributes
Examples
modal.open({
title: 'My title',
content: 'My content',
attributes: { class: 'my-class' },
});
Returns this
close
Close the modal window
Examples
modal.close();
Returns this
onceClose
Execute callback when the modal will be closed. The callback will be called one only time
Parameters
clbFunction Callback to call
Examples
modal.onceClose(() => {
console.log('The modal is closed');
});
Returns this
onceOpen
Execute callback when the modal will be opened. The callback will be called one only time
Parameters
clbFunction Callback to call
Examples
modal.onceOpen(() => {
console.log('The modal is opened');
});
Returns this
isOpen
Checks if the modal window is open
Examples
modal.isOpen(); // true | false
Returns Boolean
setTitle
Set the title to the modal window
Parameters
title(string | HTMLElement) Title
Examples
// pass a string
modal.setTitle('Some title');
// or an HTMLElement
const el = document.createElement('div');
el.innerText = 'New title';
modal.setTitle(el);
Returns this
getTitle
Returns the title of the modal window
Examples
modal.getTitle();
Returns (string | HTMLElement)
setContent
Set the content of the modal window
Parameters
content(string | HTMLElement) Content
Examples
// pass a string
modal.setContent('Some content');
// or an HTMLElement
const el = document.createElement('div');
el.innerText = 'New content';
modal.setContent(el);
Returns this
getContent
Get the content of the modal window
Examples
modal.getContent();
Returns (string | HTMLElement)