Настройте конфигурацию ckeditor в Sulu 2.2.1

Я пытаюсь настроить цвет шрифта с помощью CKeditor5 в Sulu CMS (версия 2.2.1), я следовал этот документ, чтобы сделать это.

Итак, сначала я добавил эту строку в файл assets/admin/package.json (в объект зависимостей):

"@ckeditor/ckeditor5-font": "^23.0.0",

Затем я добавил эти строки в файл assets/admin/index.js:

import {ckeditorPluginRegistry, ckeditorConfigRegistry} from 'sulu-admin-bundle/containers';
import Font from '@ckeditor/ckeditor5-font/src/font';

ckeditorPluginRegistry.add(Font);
ckeditorConfigRegistry.add((config) => ({
    toolbar: [...config.toolbar, 'fontColor', 'fontBackgroundColor'],
}));

И затем я запускаю эту команду: bin/console sulu:admin:update-build На заданные вопросы я отвечаю следующее:

  • Вы хотите перезаписать локальную версию index.js? Н
  • Вы хотите перезаписать локальную версию package.json? Н
  • Объединить package.json вместе, как указано выше? Да
  • Вы хотите создать сборку сейчас? Да

Это отлично работает, я могу установить цвета и цвета фона в свой тип содержимого text_editor.

Но когда я пытаюсь добавить изображение с типом содержимого single_media_selection, у меня появляется пустая страница с этой ошибкой в ​​консоли браузера:

TypeError: (void 0) is not a function

Если я удалю все строки, которые я добавил, single_media_selection отлично работает, но я не могу изменить цвета в CKeditor.

Я где-то ошибся?


person Quentin H    schedule 02.03.2021    source источник


Ответы (1)


В упомянутой вами документации есть комментарий, в котором говорится, что вы должны используйте "@ckeditor/ckeditor5-font": "^18.0.0", если вы используете sulu 2.1 и "@ckeditor/ckeditor5-font": "^23.0.0", если вы используете sulu 2.2 и выше.

И поскольку вы упомянули, что используете sulu 2.1, это, вероятно, ошибка.

person Luca Rath-Heel    schedule 02.03.2021
comment
Вы правы, я забыл упомянуть здесь: я пробовал обе версии. - С ^18.0.0 у меня такая же проблема для single_media_selection. А для text_editor он как будто находится в режиме только для чтения, и у меня есть эта ошибка в консоли браузера: CKEditorError: this.editor.model.document.selection.getFirstPosition().findAncestor is not a function - С ^23.0.0 это ситуация, упомянутая в моем вопросе. - person Quentin H; 02.03.2021
comment
Установите версию @ckeditor/ckeditor5-font обратно на ^18.0.0, а затем запустите rm -rf assets/admin/node_modules assets/admin/package-lock.json vendor/sulu/**/node_modules vendor/sulu/**/package-lock.json в корневом каталоге вашего проекта, а затем npm install && npm run build внутри assets/admin/ - person Luca Rath-Heel; 02.03.2021
comment
С этим тоже самое, не могу зайти на другую страницу кроме домашней страницы админа. И у меня есть это в консоли браузера: TypeError: (void 0) is not a function. Кстати, я использую Sulu 2.2.1 (я исправил это в своем первоначальном вопросе), поэтому я использую версию ^23.0.0 - person Quentin H; 03.03.2021