Как использовать CKEditor с директивами Angular ngShow / ngHide

0

Я использую CKEditor в качестве редактора WYSIWYG для ввода текста на моем сайте. И я столкнулся с проблемой использования этого редактора с угловой директивой ng-show.

Когда редактор загружается с помощью ng-show = "true", редактор отлично работает. Значение панели инструментов всплывает, кнопки на панели инструментов работают, и текст также редактируется.

Однако, когда редактор сначала загружает ng-show = "false", а затем переключается на ng-show = "true", панель инструментов все же появляется, но атрибут contenteditable по какой-либо причине имеет значение false, а кнопки отключены.

Мой экземпляр CKEditor является встроенным редактором и загружается с помощью настраиваемой угловой директивы. Шаблон html устанавливает для атрибута contenteditable значение true.

Теги:
ng-show
ckeditor

2 ответа

0

Попробуйте ng-if instread. Это в основном не делает редактор вообще наоборот. Кажется, что он хорошо работает в вышеупомянутом сценарии.

0

У вас возникла эта проблема, потому что CKEDITOR пытается изменить textarea с самого начала рендеринга HTML, но textarea еще не существовала, поскольку условие ng-show не было выполнено.

Существуют угловые модули для CKEDITOR, которые мы можем использовать в Интернете. Вы можете выбрать один и использовать его.

  • 0
    Я думал, что ng-show помещает элементы в DOM и использует css, чтобы скрыть элемент? Возможно, его не существует, когда ckeditor пытается подключиться, но тогда почему я вижу панель инструментов ckeditor?
  • 0
    Я не знаю. Это тоже странно для меня. Но ошибка Javascript показывает это.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню