Editor
The top-level React component that renders the Slate editor itself.
Props
autoCorrect
autoCorrect
Boolean
Whether or not the editor should attempt to autocorrect spellcheck errors.
autoFocus
autoFocus
Boolean
Whether or not the editor should attempt to give the contenteditable element focus when it's loaded onto the page.
className
className
String
An optional class name to apply to the contenteditable element.
onChange
onChange
Function onChange(change: Change)
A change handler that will be called with the change
that applied the change. You should usually pass the newly changed change.value
back into the editor through its value
property. This hook allows you to add persistence logic to your editor.
placeholder
placeholder
String || Element
A placeholder string (or React element) that will be rendered as the default block type's placeholder.
plugins
plugins
Array
An array of Plugins
that define the editor's behavior.
readOnly
readOnly
Boolean
Whether the editor should be in "read-only" mode, where all of the rendering is the same, but the user is prevented from editing the editor's content.
role
role
String
ARIA property to define the role of the editor, it defaults to textbox
when editable.
spellCheck
spellCheck
Boolean
Whether or not spellcheck is turned on for the editor.
style
style
Object
An optional dictionary of styles to apply to the contenteditable element.
tabIndex
tabIndex
Number
Indicates if it should participate to sequential keyboard navigation.
value
value
Value
A Value
object representing the current value of the editor.
Plugin-like Props
In addition to its own properties, the editor allows passing any of the properties that a plugin defines as well.
These properties are actually just a convenience—an implicit plugin definition. Internally, they are grouped together and turned into a plugin that is given first priority in the plugin stack.
For example, these two snippets of code are equivalent:
onBeforeInput
onBeforeInput
onBlur
onBlur
onFocus
onFocus
onCopy
onCopy
onCut
onCut
onDrop
onDrop
onKeyDown
onKeyDown
onKeyUp
onKeyUp
onPaste
onPaste
onSelect
onSelect
schema
schema
To see how these properties behave, check out the Plugins reference.
Instance Methods
blur
blur
blur() => Void
Programmatically blur the editor.
change
change
change(fn) => Void
change(fn, ...args) => Void
Programmatically invoke a change fn
on the editor. The function will be invoked with a new change
object representing the editor's current value.
If extra ...args
are passed in, the change fn
will be invoked with (change, ...args)
, so you can use this as a shorthand for performing single-function changes.
focus
focus
focus() => Void
Programmatically focus the editor.
Instance Properties
schema
schema
Schema
The editor's current schema.
stack
stack
Stack
The editor's current stack.
value
value
Value
The editor's current value.
Last updated