私はcomponentDidMount関数で状態を更新したコンポーネントを持っています。状態はどこで更新する必要がありますか?
https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-did-mount-set-state.md
それは
componentDidMount(無ましたマウント・セット状態)でSETSTATEの防止の使用
を言う:私は、このページに私を指摘リンターの警告を得ましたコンポーネントをマウントした後の状態を更新すると、2番目のrender()呼び出しがトリガーされ、プロパティ/レイアウトのスラッシングが発生する可能性があります。
代わりに状態を更新する必要がありますか?
これは私のcomponentDidMount機能である:
componentDidMount(){
this.interval = setInterval(() => {
this.setState({
frame: this.state.frame + 1
});
}, this.props.interval);
}
そして、これは私の関数でレンダリングしている:実際には、あなたは、setState
を使用していない
constructor(props, context){
super(props, context);
this.state = {frame: 1};
}
コンストラクタはどうですか? –