毕设教育软件测试题场景
测试题答题完毕后显示成绩得分情况,并且通过颜色区分答题正确与错误的情况,点击相应题号在下方渲染相应题目,并给出正确答案。
const {totalScore,myScore,cards,answers,setVisible,wrongAnswer,chooseNum} = this.state
var result = null;
{cards.map((v,i)=>{
if (i == chooseNum) {
result = <View style={{width:250}}>
<Text style={{marginTop:10}}>{v.qs_question}</Text>
<View style={{flexDirection:"row",justifyContent:"space-around",marginTop:10,marginBottom:30}}>
<Text style={{fontSize:15}}>A: {v.qs_choiceA}</Text>
<Text style={{fontSize:15}}>B: {v.qs_choiceB}</Text>
</View>
<Text style={{fontSize:17,fontWeight:"300",color:"lightgreen"}}>正确答案:{v.qs_right}</Text>
<Text style={{fontSize:17,fontWeight:"300",color:"red"}}>我的答案:{answers[i]}</Text>
</View>
}
return(
<View>
<TouchableOpacity style={{
justifyContent:"center",
alignItems:"center",
height:40,
width:40,
borderRadius:20,
//通过遍历错误选项中有没有该题号判断背景颜色
backgroundColor:wrongAnswer.includes(i+1)?"red":"lightgreen"
}}
onPress={()=>this.setState({ chooseNum:i })}
>
<Text>{i+1}</Text>
</TouchableOpacity>
</View>
)
})}