Повторная инициализация нескольких 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;
  });
});

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

Анимируем изображения через KlingAI на примере обоев Lineage 2

Смотрим результат по ссылкам на... Читать далее
·1 мин. чтения

Режим разработчика в Lineage 2

Чтобы переключиться в режим разработчика, нужно отредактировать файл... Читать далее
·3 мин. чтения

Как выглядели коробки с дисками игры Lineage 2

Поскольку оригинальные коробки с дисками игры Lineage 2 никогда не появлялись... Читать далее
·1 мин. чтения

© geekrainian.com.