使用 OnBlur 事件修剪 Draft.js 编辑器内容

Trimming Draft.js Editor content with the OnBlur event

为了 trim Draft.js 编辑器的内容,以下答案适用于 onClick 事件:

但是,我无法让它与 onBlur 事件一起使用。

在这两种情况下,它都会到达该方法,但只有在单击按钮时,它才会执行 trim内容的 ming。

您可以在以下 JSFiddle 中重现此问题:https://jsfiddle.net/pnfgrhqz/1/

如果在开头加空格,然后点击按钮,会trim内容,但是,如果你这样做,然后点击失焦,trimContent方法是也会触发,但内容不会trimmed.

知道我在这里遗漏了什么吗?

你有两个选择。您可以使用 setTimeout

调用微调器
  trimOnBlur = () =>{setTimeout(this.trimContent , 0);}

https://jsfiddle.net/bsv3oegr/1/

或在父级上添加 onBlur 事件 div 并使用 tabIndex 使其可聚焦。

 tabIndex="0" onBlur={this.trimContent}

https://jsfiddle.net/8rtcgqkb/