IME问题,即中文输入时出现在输入框上方的带候选但还未选择的状态,input框中会输入出现连续的字母异常问题;
onChange或者onInput事件不可用,onblur事件产品体验效果不佳;
onCompositionStart // 开始打字
onCompositionEnd // 打字结束
onCompositionUpdate // 打字过程中
立flag,在start中置为false,end中为true;在flag为true时,可对输入值有所处理;
handleComposition = (flag, e) => {
if (flag) {
// 保存所输入的值
console.log('e.target.value = ', e.target.value);
}
]
render() {
return (
<input
onCompositionStart={(e) => {handleComposition(false, e);}}
onCompositionEnd={(e) => {handleComposition(true, e);}}
onCompositionUpdate={(e) => {handleComposition(false, e);}}
/>
)
}