Установите значение для редактора ace, не выбирая весь редактор


92

Таким образом, вы можете установить значение редактора ace, setValueно после установки значения редактор выберет все значение редактора. Как это отключить? Это означает, что когда я устанавливаю значение редактора ace на Hello world, он не выделяетсяHello world

Ответы:


165

Вы можете использовать второй параметр для управления положением курсора после setValue

editor.setValue(str, -1) // moves cursor to the start
editor.setValue(str, 1) // moves cursor to the end

17

Вы даже можете использовать clearSelection () после того, как выполните setValue ();

editor.setValue("Hello World");
editor.clearSelection(); // This will remove the highlight over the text


0

У меня была такая же проблема.

Хотя вы можете установить второй параметр либо на 1, либо на -1 , я думаю, вам также следует проверить это: https://ace.c9.io/api/editor.html#Editor.setValue

Editor.setWrapBehavioursEnabled(Boolean enabled)

Используйте это сразу после создания редактора.

У меня это работает очень хорошо. Разница между этим методом и методом, используемым пользователем, заключается в том, что положение курсора не изменяется, вы можете перемещать его самостоятельно Editor.selection.moveTo(row, column), таким образом, пользователь не будет испытывать странных изменений положения курсора при использовании, скажем, CTRL + Z для отмены. действие :)


1
Этот ответ непонятен. Вы имеете в виду, что вызов Editor.setWrapBehavioursEnabled(Boolean enabled)с некоторым значением сразу после инициализации редактора предотвратит выбор всего текста при вызове editor.setValue?
Macario

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.