Я работаю над проектом Vue в реальном времени, который использует ckeditor5 в качестве текстового редактора. Pusher - это API в реальном времени, который использует websocket для трансляции событий в другие экземпляры Pusher в реальном времени. Это Pusher
В конфигурации ckeditor я передаю обратный вызов set
. Этот установленный обратный вызов запускает любое изменение текста, и я использую его для запуска событий толкателя, передавая текстовое значение другим экземплярам толкателя.
Проблема возникает, когда другой экземпляр толкателя на их стороне получает событие, и после его обработки Vue реактивно обновляет текстовое значение в DOM, вызывая тем самым вышеупомянутый обратный вызов set
, который снова вызывает событие. В среде реального времени он портит обновление значения и заканчивается мерцанием текста.
В обратном вызове я получаю только строковое значение и не могу выяснить, что инициировало обратный вызов, поэтому могу ' t остановить выполнение.
Есть ли способ запретить ckeditor5 запускать обратный вызов?
Это может быть проблемой, существующей в каждом проекте на основе веб-сокетов.