Reactのstate
を更新する構文は大きく変更されています。私はそれを開始し、更新する最もシンプルでエレガントな方法を見つけることを試みています。Reactで状態を更新するエレガントなES6方法
は、このRNコードを手に入れた:
const { quotes } = require('./quotes.json')
class QuoteScreen extends Component {
state = {
QuoteIndex: 0
}
render() {
return (
<Image ...>
<View ...>
...
<ButtonNextQuote
onPress={() => {
this.setState((prevState, props) => {
return {
QuoteIndex: (prevState.QuoteIndex + 1) % (quotes.length - 1)
}
})
}}
/>
</View>
</Image>
)
}
}
onPress
にstate
の更新を低減することが可能でしょうか?
匿名関数を2回呼び出すことは避けたいですが、ハンドラを参照してバインドする必要はありません。また、return
の使用を避けたいですか?
この質問にはES6というタグが付いているので、実験的な機能(パブリッククラスのフィールド)を使用していることを指摘し、それらを有効にするために必要なことを簡単に説明する価値があります。 –
申し訳ありませんが、私のせいです。基本的には、この機能には、最新のバージョンのbabelをcreate-react-appおよびreact-nativeの依存関係リストに統合して、すぐに使用できます。これはE6 +です。それを指摘してくれてありがとう –