API
Tipos de Nodo
Editor
48 min
el editor objeto almacena todo el estado de un editor de slate puede ser extendido por plugins para agregar ayudantes e implementar nuevos comportamientos interface editor { children node\[] selection range | null operations operation\[] marks omit\<text, 'text'> | null // schema specific node behaviors isinline (element element) => boolean isvoid (element element) => boolean normalizenode (entry nodeentry) => void onchange () => void // overrideable core actions addmark (key string, value any) => void apply (operation operation) => void deletebackward (unit 'character' | 'word' | 'line' | 'block') => void deleteforward (unit 'character' | 'word' | 'line' | 'block') => void deletefragment () => void insertbreak () => void insertfragment (fragment node\[]) => void insertnode (node node) => void inserttext (text string) => void removemark (key string) => void } docid\ bh3thnehmuw74stzowtli docid\ bh3thnehmuw74stzowtli docid\ bh3thnehmuw74stzowtli docid\ bh3thnehmuw74stzowtli docid\ bh3thnehmuw74stzowtli docid\ bh3thnehmuw74stzowtli docid\ bh3thnehmuw74stzowtli docid\ bh3thnehmuw74stzowtli métodos de instanciación createeditor() => editor nota este método se importa directamente de slate y no es parte del objeto editor crea un nuevo objeto editor vacío métodos estáticos métodos de recuperación editor above\<t extends ancestor>(editor editor, options?) => nodeentry\<t> | undefined obtén el ancestro encima de una ubicación en el documento opciones {at? location, match? nodematch, mode? 'highest' | 'lowest', voids? boolean} editor after(editor editor, at location, options?) => point | undefined obtén el punto después de una ubicación opciones {distance? number, unit? 'offset' | 'character' | 'word' | 'line' | 'block', voids? boolean} editor before(editor editor, at location, options?) => point | undefined obtén el punto antes de una ubicación opciones {distance? number, unit? 'offset' | 'character' | 'word' | 'line' | 'block', voids? boolean} editor edges(editor editor, at location) => \[point, point] obtén los puntos de inicio y fin de una ubicación editor end(editor editor, at location) => point obtén el punto final de una ubicación editor first(editor editor, at location) => nodeentry obtén el primer nodo en una ubicación editor fragment(editor editor, at location) => descendant\[] obtén el fragmento en una ubicación editor last(editor editor, at location) => nodeentry obtén el último nodo en una ubicación editor leaf(editor editor, at location, options?) => nodeentry obtén el nodo de texto hoja en una ubicación opciones {depth? number, edge? 'start' | 'end'} editor levels\<t extends node>(editor editor, options?) => generator\<nodeentry\<t>, void, undefined> iterar a través de todos los niveles en una ubicación opciones {at? ubicación, match? coincidenciadenodo, reverse? booleano, voids? booleano} editor marks(editor editor) => omit\<text, 'text'> | null obtener las marcas que se agregarían al texto en la selección actual editor next\<t extends descendant>(editor editor, options?) => nodeentry\<t> | undefined obtener el nodo coincidente en la rama del documento después de una ubicación opciones {at? ubicación, match? coincidenciadenodo, mode? 'all' | 'highest' | 'lowest', voids? booleano} editor node(editor editor, at ubicación, options?) => nodeentry editor nodes\<t extends node>(editor editor, options?) => generator\<nodeentry\<t>, void, undefined> obtener el nodo en una ubicación opciones depth? número, edge? 'start' | 'end' editor nodes(editor editor, options?) => generator\<nodeentry\<t>, void, undefined> iterar a través de todos los nodos en el editor opciones {at? location | span, match? nodematch, mode? 'all' | 'highest' | 'lowest', universal? boolean, reverse? boolean, voids? boolean} options mode 'all' (predeterminado) todos los nodos que coinciden 'highest' en una jerarquía de nodos, solo devolver los nodos de nivel más alto que coinciden 'lowest' en una jerarquía de nodos, solo devolver los nodos de nivel más bajo que coinciden editor parent(editor editor, at location, options?) => nodeentry\<ancestor> obtener el nodo padre de una ubicación opciones {depth? number, edge? 'start' | 'end'} editor path(editor editor, at location, options?) => path obtener la ruta de una ubicación opciones {depth? number, edge? 'start' | 'end'} editor pathref(editor editor, path path, options?) => pathref crea una referencia mutable para un path objeto, que se mantendrá sincronizado a medida que se apliquen nuevas operaciones al editor opciones {affinity? 'backward' | 'forward' | null} editor pathrefs(editor editor) => set\<pathref> obtén el conjunto de referencias de ruta actualmente rastreadas del editor editor point(editor editor, at location, options?) => point obtén el punto de inicio o fin de una ubicación opciones {edge? 'start' | 'end'} editor pointref(editor editor, point point, options?) => pointref crea una referencia mutable para un point objeto, que se mantendrá sincronizado a medida que se apliquen nuevas operaciones al editor opciones {affinity? 'backward' | 'forward' | null} editor pointrefs(editor editor) => set\<pointref> obtén el conjunto de referencias de punto actualmente rastreadas del editor editor positions(editor editor, options?) => generator\<point, void, undefined> iterar a través de todas las posiciones en el documento donde se puede colocar un punto por defecto, se moverá hacia adelante por desplazamientos individuales a la vez, pero puedes pasar la opción de unidad 'carácter' para avanzar un carácter, palabra o línea a la vez nota por defecto, los nodos vacíos se tratan como un solo punto y la iteración no ocurrirá dentro de su contenido a menos que pases verdadero para la opción de vacíos, entonces ocurrirá la iteración opciones {en? ubicación, unidad? 'desplazamiento' | 'carácter' | 'palabra' | 'línea' | 'bloque', inverso? booleano, vacíos? booleano} editor anterior\<t extends nodo>(editor editor, opciones?) => entradanodo\<t> | indefinido obtener el nodo coincidente en la rama del documento antes de una ubicación opciones {en? ubicación, coincidencia? coincidencianodo, modo? 'todo' | 'más alto' | 'más bajo', vacíos? booleano} editor rango(editor editor, en ubicación, a? ubicación) => rango obtener un rango de una ubicación editor referenciarango(editor editor, rango rango, opciones?) => referenciarango crear una referencia mutable para un rango objeto, que se mantendrá sincronizado a medida que se apliquen nuevas operaciones al editor opciones {afinidad? 'hacia atrás' | 'hacia adelante' | 'hacia afuera' | 'hacia adentro' | nulo} editor referenciasrango(editor editor) => conjunto\<referenciarango> obtén el conjunto de referencias de rango actualmente rastreadas del editor editor start(editor editor, at location) => point obtén el punto de inicio de una ubicación editor string(editor editor, at location, options?) => string obtén el contenido de la cadena de texto de una ubicación nota por defecto, el texto de los nodos vacíos se considera una cadena vacía, independientemente del contenido, a menos que pases true para la opción de vacíos opciones {voids? boolean} editor void(editor editor, options?) => nodeentry\<element> | undefined coincide con un nodo vacío en la rama actual del editor opciones {at? location, mode? 'highest' | 'lowest', voids? boolean} métodos de manipulación editor addmark(editor editor, key string, value any) => void agrega una propiedad personalizada a los nodos de texto hoja en la selección actual si la selección está actualmente colapsada, las marcas se agregarán a la editor marks propiedad en su lugar, y se aplicarán cuando se inserte texto a continuación editor deletebackward(editor editor, options?) => void elimina contenido en el editor hacia atrás desde la selección actual opciones {unit? 'character' | 'word' | 'line' | 'block'} editor deleteforward(editor editor, options?) => void elimina contenido en el editor hacia adelante desde la selección actual opciones {unit? 'character' | 'word' | 'line' | 'block'} editor deletefragment(editor editor) => void elimina el contenido en la selección actual editor insertbreak(editor editor) => void inserta un salto de bloque en la selección actual editor insertfragment(editor editor, fragment node\[]) => void inserte un fragmento en la selección actual si la selección está actualmente expandida, se eliminará primero editor insertnode(editor editor, node node) => void inserte un nodo en la selección actual si la selección está actualmente expandida, se eliminará primero editor inserttext(editor editor, text string) => void inserte texto en la selección actual si la selección está actualmente expandida, se eliminará primero editor removemark(editor editor, key string) => void elimine una propiedad personalizada de todos los nodos de texto hoja en la selección actual si la selección está actualmente colapsada, la eliminación se almacenará en editor marks y se aplicará al texto insertado a continuación editor unhangrange(editor editor, range range, options?) => range convierta un rango en uno no colgante opciones {voids? boolean} métodos de verificación editor hasblocks(editor editor, element element) => boolean verifique si un nodo tiene hijos de bloque editor hasinlines(editor editor, element element) => boolean verifique si un nodo tiene hijos en línea y de texto editor hastexts(editor editor, element element) => boolean verifique si un nodo tiene hijos de texto editor isblock(editor editor, value any) => value is element verifique si un valor es un bloque elemento objeto editor iseditor(value any) => value is editor verifique si un valor es un editor objeto editor isend(editor editor, point point, at location) => boolean verifique si un punto es el punto final de una ubicación editor isedge(editor editor, point point, at location) => boolean verifique si un punto es un borde de una ubicación editor isempty(editor editor, element element) => boolean verifique si un elemento está vacío, teniendo en cuenta los nodos vacíos editor isinline(editor editor, value any) => value is element verifique si un valor es un inline elemento objeto editor isnormalizing(editor editor) => boolean verifique si el editor está actualmente normalizando después de cada operación editor isstart(editor editor, point point, at location) => boolean verifique si un punto es el punto de inicio de una ubicación editor isvoid(editor editor, value any) => value is element verificar si un valor es un vacío elemento objeto métodos de normalización editor normalize(editor editor, options?) => void normalizar cualquier objeto sucio en el editor opciones {force? boolean} editor withoutnormalizing(editor editor, fn () => void) => void llamar a una función, aplazando la normalización hasta que se complete métodos de instancia específicos del esquema para sobrescribir reemplace estos métodos para modificar el comportamiento original del editor al construir https //github com/ianstormtaylor/slate/tree/a02787539a460fb70730085e26df13cca959fabd/concepts/07 plugins/readme md al modificar el comportamiento, llame al método original cuando sea apropiado por ejemplo, un plugin que marca nodos de imagen como "vacíos" const withimages = editor => { const { isvoid } = editor editor isvoid = element => { return element type === 'image' ? true isvoid(element) } return editor } métodos de tipo de elemento utilice estos métodos para que slate pueda identificar ciertos elementos como docid\ dfyx mhmcdf7sstiavowt o docid\ dfyx mhmcdf7sstiavowt isinline(element element) => boolean verifique si un valor es un elemento objeto isvoid(element element) => boolean verifique si un valor es un elemento objeto método de normalización normalizenode(entry nodeentry) => void docid\ vdl26j4szpz5iaksmkofn un nodo de acuerdo con el esquema método de callback onchange() => void se llama cuando hay un cambio en el editor métodos de marcado addmark(key string, value any) => void agregue una propiedad personalizada a los nodos de texto hoja en la selección actual si la selección está actualmente colapsada, las marcas se agregarán a la editor marks propiedad en su lugar, y se aplicarán cuando se inserte texto a continuación removemark(key string) => void elimina una propiedad personalizada de los nodos de texto hoja en la selección actual método getfragment getfragment() => descendiente devuelve el fragmento en la selección actual se utiliza al cortar o copiar, por ejemplo, para obtener el fragmento en la selección actual métodos de eliminación cuando un usuario presiona retroceso o eliminar, se invoca el método basado en la selección por ejemplo, si la selección se expande sobre algún texto y el usuario presiona la tecla de retroceso, deletefragment se llamará, pero si la selección está colapsada, deletebackward se llamará deletebackward(options? {unit? 'character' | 'word' | 'line' | 'block'}) => void elimina contenido en el editor hacia atrás desde la selección actual deleteforward(options? {unit? 'character' | 'word' | 'line' | 'block'}) => void elimina contenido en el editor hacia adelante desde la selección actual deletefragment() => void elimina el contenido de la selección actual métodos de inserción insertfragment(fragment node\[]) => void inserta un fragmento en la selección actual si la selección está actualmente expandida, elimínala primero insertbreak() => void inserta un salto de bloque en la selección actual si la selección está actualmente expandida, elimínala primero insertnode(node node) => void inserta un nodo en la selección actual si la selección está actualmente expandida, elimínala primero inserttext(text string) => void inserta texto en la selección actual si la selección está actualmente expandida, elimínala primero método de manejo de operaciones apply(operation operation) => void aplica una operación en el editor
