У меня есть текстовая область, в которую я хотел бы вставить текст в позицию курсора, когда пользователь нажимает кнопку. Кто-нибудь знает, как это сделать?





Qwertie, конечно, права. В любом случае, если вы хотите вставить данную строку в текстовую область в позиции курсора вы можете использовать такую функцию:
insertMyText = e => {
let textToInsert = " this is the inserted text "
let cursorPosition = e.target.selectionStart
let textBeforeCursorPosition = e.target.value.substring(0, cursorPosition)
let textAfterCursorPosition = e.target.value.substring(cursorPosition, e.target.value.length)
e.target.value = textBeforeCursorPosition + textToInsert + textAfterCursorPosition
}
а также:
<textarea onClick = {this.insertMyText}>bla bla bla bla</textarea>
Когда вы нажимаете кнопку, вы перемещаете сфокусированный элемент, чтобы в тексте больше не было курсора. Таким образом, вам нужно будет отслеживать последнее местоположение курсора, а затем просто установить значение текстовой области как текущее значение + дополнительный текст в месте последней известной позиции курсора.