Как сфокусировать курсор на конце вставленного текста в ckeditor5?

В следующем коде редактор вставляет некоторый текст при нажатии кнопки, а затем редактор фокусирует курсор. Однако он фокусирует курсор в начале текстовой области. Я хотел бы, чтобы он сфокусировался после текста, который был там размещен. Как это возможно? Хотя я просмотрел API и использовал средство записи, setSelection и т. д., я вообще их не понимаю и не смог правильно их использовать, поэтому любая помощь приветствуется.


<div id="editor">
  <p>Editor content goes here.</p>
</div>
<br>
<button id="focusSet">Focus</button>

<script>
  // Editor configuration.
  ClassicEditor
    .create( document.querySelector( '#editor' ))
    .then( editor => {
        window.editor = editor;
  })
    .catch( error => {
    console.error( error );
  });

  document.getElementById('focusSet').onclick = function(e) {
       window.editor.setData('text'); 
       window.editor.editing.view.focus();
  };
</script>```
How would I change this code to set the cursor to the end of the text? This comes from a jsfiddle

[JsFiddle][1]


  [1]: https://jsfiddle.net/30mb2ef9/2/

person Chris Muster    schedule 09.12.2019    source источник


Ответы (1)


Я сделал это так: сначала установил текст, а затем переместил курсор с помощью createPositionAt.

editorInstance.setData('TEXT TO SET');
editorInstance.model.change( writer => {
    writer.setSelection( writer.createPositionAt( editorInstance.model.document.getRoot(), 'end' ));
});
person Coderxyz    schedule 07.01.2020