私はsetState
を入力のonChange
ハンドラで次のダニに延期する必要がある小さなユーティリティを作成しています。基本的なコンセプトを示す簡単なスニペットの下に。アクセントと遅延リアクションの入力onChange
https://jsfiddle.net/samuelsimoes/q3p44sz1/
class MyComponent extends React.Component {
constructor() {
super(...arguments);
this.state = {};
}
onChange (value) {
setTimeout(v => {
this.setState({ name: v });
}.bind(this, value), 0);
}
render() {
return (
<div>
<input
type="text"
value={this.state.name}
onChange={evt => this.onChange(evt.target.value)} />
</div>
);
}
};
ReactDOM.render(
<MyComponent/>,
document.getElementById("app-container")
);
あなたは、Mac OS上のブラウザでこのスニペットを実行し、各ブラウザ上で異なるぎこちない動作を取得アクセントでいくつかの文字を入力しようとします。 Chromeでは、アクセントがもう適用されなくなった後で初めてアクセントが動作します(下のgifを見てください)。 Firefoxでは、アクセントと文字は表示されません。
君たちはこれについてどの手掛かりを持っていますか?
p.s .:この反応は、0.13,0.14および15.0.2の反応で試験した。
あなたが直面している問題については不明です。しかし、 'charset'をUTF-8やISO-8859-1として解決すると思いますか? – anoop
@anoop jsfiddleは既にUTF-8で動作します。私はcharsetの問題ではないと信じています。私はあなたに人々が理解するのを助けるために問題を示すgifで質問を更新しました。 –