我想在setVote之前先进行setVoting,然后再运行sendVote。但是无论如何它首先运行sendVote。我该如何解决?我使用React Hook ...所以很难。请帮我!!!非常感谢。
<TouchableOpacity onPress={() => {setVoting(!voting); setVote(voting?vote-1:vote+1); sendVote();}}>
<Ionicons
name= {voting?'md-star':'md-star-outline'}
size={24}
color={'#aa4fff'}
/>
</TouchableOpacity>
答案 0 :(得分:0)
尝试以下操作:
useEffect(()=>{
setVote(voting?vote-1:vote+1);
},[voting]);
useEffect(()=>{
sendVote();
},[vote]);
...然后从onPress中删除setVote和sendVote:
<TouchableOpacity onPress={() => setVoting(!voting)}>
<Ionicons
name= {voting?'md-star':'md-star-outline'}
size={24}
color={'#aa4fff'}
/>
</TouchableOpacity>