CKEditor Angular как вставить текст в позицию, но сохранить форматирование - PullRequest
0 голосов
/ 14 июля 2020

Я могу вставить текст своего поля слияния в текущий выбор с помощью следующего кода:

editor.model.change(writer => {
    var position = editor.model.document.selection.getFirstPosition();

    // my attempt to join with last node
    position.stickiness = 'toPrevious';
        
    writer.insertText(text_to_insert, position);
});

Однако при этом не сохраняется стиль последнего узла, а вместо этого используется стиль по умолчанию. Я просмотрел документацию CKEditor и увидел, что могу изменить липкость объекта позиции, но это, похоже, ничего не меняет.

введите описание изображения здесь

Я пытаюсь понять, как я могу вставить текст в позицию и сохранить стиль предыдущих узлов. Любые предложения были бы полезны!

1 Ответ

0 голосов
/ 15 июля 2020

Через несколько часов мне удалось заставить что-то работать. Документы были полезны, но я продолжал получать неожиданное поведение с материалом выбора.

editor.model.change(writer => {

    var selection = editor.model.document.selection;
    var position = selection.getFirstPosition();

    // copy attributes of selected element
    var attributes = {};
    if (position.parent.childCount > 0) {
        var element = position.parent.getChild(0);
        attributes = element.getAttributes();
    }

    writer.insertText(text_to_insert, attributes, position);

});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...