我刚刚开始通过构建测验应用程序来学习React Native。
我在计算以下两件事:
不。 1可以。但是第二名杀死了我好几天。我想知道如何在单击按钮时有条件地更改一种状态。
import React, {Component} from 'react'; import { View, Text, Button } from 'react-native'; class Quiz extends Component { state = { quiz_position: 10, numberOfTry: 0, numberOfCorrectAnserOnFirstTry: 0, isFirstTry: true } updateCount = () => { this.setState({ if (isFirstTry = true) { numberOfCorrectAnserOnFirstTry: numberOfCorrectAnserOnFirstTry +1 } numberOfTry: this.state.numberOfTry+1, isFirstTry: false, }); } render () { return ( You tried {this.state.numberOfTry +1 } times. Correct {this.state.numberOfCorrectAnserOnFirstTry} times ) } } export default Quiz
答案 0 :(得分:4)
我假设this.state.quiz_position
是表示当前问题的索引,而不需要状态中的isFirstTry
标志。
updateCount = () => {
const { numberOfCorrectAnserOnFirstTry, numberOfTry, quiz_position } = this.state;
const isFirstTry = quiz_position === 0;
this.setState({
numberOfCorrectAnserOnFirstTry: isFirstTry? numberOfCorrectAnserOnFirstTry + 1 : numberOfCorrectAnserOnFirstTry
numberOfTry: numberOfTry + 1,
});
}