gpt4 book ai didi

javascript - DraftJS:如何以编程方式将焦点(光标)移动到右侧的某个字符?

转载 作者:行者123 更新时间:2023-12-05 06:36:08 26 4
gpt4 key购买 nike

我正在使用这个在编辑器中插入一些文本:

_insertText(text) {
const { editorState, onChange } = this.props
const newContentState = Modifier.insertText(
editorState.getCurrentContent(),
editorState.getSelection(),
text
)

const newState = EditorState.createWithContent(newContentState)
onChange(EditorState.acceptSelection(newState, editorState.getSelection()))
}

但插入后,光标停留在 anchor 位置,在插入点。我想将它移到插入文本的末尾,这样我就可以继续编辑而无需手动移动光标。

请帮忙。

最佳答案

修复了这个

_insertText(text) {
const { editorState, onChange } = this.props
const newContentState = Modifier.insertText(
editorState.getCurrentContent(),
editorState.getSelection(),
text
)

const newState = EditorState.createWithContent(newContentState)
const nextOffSet = editorState.getSelection().getFocusOffset() + text.length

const newSelection = editorState.getSelection().merge({
focusOffset: nextOffSet,
anchorOffset: nextOffSet
})

onChange(EditorState.acceptSelection(newState, newSelection))
}

如果有更好的解决方案,请告诉我。

关于javascript - DraftJS:如何以编程方式将焦点(光标)移动到右侧的某个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49273497/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com