2016-12-02 80 views
1

我已經創建了一個文檔模式,其中包含一個captioned_image節點類型,它在單獨的CMS中引用圖像。該圖像有一個標題和一個信用點,我想在文檔中進行編輯。當用戶在ProseMirror編輯器中編輯內容時,我可以記下這一更改並向CMS發送更新請求。如何在ProseMirror中動態修改不可修改節點的子內容?

但是,當另一個用戶在CMS中編輯圖像時,標題和信用字段可以「鎖定」。

如何讓captioned_image節點的標題和信用子節點不可編輯,當這些字段被另一個用戶鎖定時?選擇不應該放在某個位置上。

回答

2

我能想到的兩種方式

  1. 當一塊的文件被鎖定,過濾器變換的動作,消除(復位到舊狀態)的任何觸摸該區域(可以被確定通過調用forEachaction.transform.mapping.maps中的元素)。

  2. 爲這些類型的節點寫一個自定義節點視圖,並給它們一個屬性readOnly。當它變成不可編輯的時候切換它,當它開啓時,用contenteditable=false呈現鎖定的內容。但請注意,這不能防止對內容進行程序化更改。另外,它會使光標不能放入其中,這可能不是所期望的。