Повторная инициализация нескольких TinyMCE редакторов

·1 мин. чтения·

Как-то была необходимость перезагрузить одновременно несколько редакторов TinyMCE на одной странице, но встроенные в разные компоненты.

На примере проекта написанного на AngularJS мы можем использовать глобальный обьект tinymce который содержит вложенную переменную EditorManager.editors. Чтобы получить доступ к каждому редактору достаточно пройтись по по каждому элементу массива этой переменной. Для перезагрузки редактора можно вызвать функцию execCommand с параметрами mceRemoveEditor и mceAddEditor добавляя небольшую задержку между вызовами (таймаут).

Пример кода:

tinymce.EditorManager.editors.forEach(function (editor) {
  tinymce.EditorManager.execCommand('mceRemoveEditor', false, editor.id);
  $timeout(() => {
    tinymce.EditorManager.execCommand('mceAddEditor', false, editor.id);
    tinymce.settings = $scope.tinymceOptions;
  });
});

Похожие публикации

Пробуем генерацию картинок через ИИ
Решил бесплатно пощупать генеративные ИИ и создать несколько картинок на основе... Читать далее
·1 мин. чтения
Количество одновременно лежащих обьектов Counter-Strike: Source
Количество обьектов в Counter-Strike: Source которые могут лежать на земле и... Читать далее
·1 мин. чтения
Шпаргалка по командам Yarn
В данной статье описаны основные команды Yarn и особенности их применения. В... Читать далее
·2 мин. чтения

© geekrainian.com