2016-12-02 4 views
1

Ich habe ein Dokumentschema erstellt, das einen Knotentyp captioned_image enthält, der auf ein Bild in einem separaten CMS verweist. Das Bild hat eine Beschriftung und ein Guthaben, das ich im Dokument bearbeiten möchte. Wenn der Benutzer den Inhalt im ProseMirror-Editor bearbeitet, kann ich die Änderung zur Kenntnis nehmen und eine Anfrage mit den Aktualisierungen an das CMS senden.Wie macht man untergeordneten Inhalt eines Knotens dynamisch in ProseMirror?

Die Beschriftungs- und Kreditfelder können jedoch "gesperrt" werden, wenn ein anderer Benutzer das Bild im CMS bearbeitet.

Wie kann ich die Unterknoten für Beschriftung und Kredit des Knotens captioned_image nicht editierbar machen, wenn diese Felder von einem anderen Benutzer gesperrt sind? Eine Auswahl sollte nicht an einer Position platziert werden können.

Antwort

2

kann ich denke an zwei Möglichkeiten

  1. Wenn ein Stück des Dokuments gesperrt ist, Filteraktionen verwandeln, Cancelling (Zurücksetzen auf den alten Zustand) alle, die diese Region berühren (kann forEach durch den Aufruf bestimmt werden auf den Elementen in action.transform.mapping.maps).

  2. Schreiben Sie eine benutzerdefinierte Knotenansicht für diese Arten von Knoten, und geben Sie ihnen ein Attribut readOnly. Schalten Sie sie um, wenn sie nicht mehr bearbeitet werden sollen. Wenn sie aktiviert ist, rendern Sie den gesperrten Inhalt mit contenteditable=false. Beachten Sie jedoch, dass dies nicht vor programmatischen Änderungen am Inhalt schützt. Außerdem wird es unmöglich machen, den Cursor in sie zu setzen, was nicht wünschenswert ist.

Verwandte Themen