gpt4 book ai didi

javascript - 在draft-js中选择后实体内的光标

转载 作者:行者123 更新时间:2023-12-05 00:26:59 37 4
gpt4 key购买 nike

我正在努力使实体样式按照我希望使用 Draft-js 的方式工作。我通过选择自动完成组件中的项目将样式实体添加到我的输入中。当我选择一个时,它可以工作,但插入符号会留在实体内,直到我添加另一个字符。有没有办法在实际实体之后移动插入符号而不添加空格?

我正在使用一个名为 draft-js-autocomplete 的库,如有必要,我不介意提出拉取请求。

为了显示:

Autocomplete selection
After the selection

最佳答案

您必须在此处添加一个空字符。

 const newContentState = Modifier.insertText(
contentStateWithEntity,
currentSelection,
`...` + '\u200A',
null,
entityKey);
此外,您将不得不调整您的策略如下:
    function placeholderFieldStrategy(contentBlock, callback, contentState) {
contentBlock.findEntityRanges(
(character) => {
const entityKey = character.getEntity();
return (
entityKey !== null &&
contentState.getEntity(entityKey).getType() === 'PLACEHOLDER_FIELD'
);
},
(start, end) => callback(start, end - 1)
);
}

关于javascript - 在draft-js中选择后实体内的光标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58650389/

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