Reactjs React Native-如何更改一个元素的颜色?

Reactjs React Native-如何更改一个元素的颜色?,reactjs,react-native,react-hooks,stylesheet,Reactjs,React Native,React Hooks,Stylesheet,我正在尝试用react native制作一个小测验应用程序。 目前,我正试图找出如何改变我按下的按钮的颜色。现在,我所有按钮上的颜色都改变了,这是不正确的,因为如果答案正确,我想显示绿色,如果答案不正确,则显示红色 问题是我使用的是钩子,感觉之前关于这个主题的大多数问题/答案都是使用类,我不太理解这一点 我遇到了一个很好的解决方案,可能是stackoverflow(不记得名字)的某个人发布了这个JSFIDLE。不幸的是,这不是用钩子做的,我一直在努力阅读和理解如何转换它 这是我的按钮/框/文本或

我正在尝试用react native制作一个小测验应用程序。 目前,我正试图找出如何改变我按下的按钮的颜色。现在,我所有按钮上的颜色都改变了,这是不正确的,因为如果答案正确,我想显示绿色,如果答案不正确,则显示红色

问题是我使用的是钩子,感觉之前关于这个主题的大多数问题/答案都是使用类,我不太理解这一点

我遇到了一个很好的解决方案,可能是stackoverflow(不记得名字)的某个人发布了这个JSFIDLE。不幸的是,这不是用钩子做的,我一直在努力阅读和理解如何转换它

这是我的按钮/框/文本或任何我应该称之为它的代码,这是我希望颜色变化发生的地方。这里有一些代码我可能不会使用(如果有点混乱,很抱歉)


{questions[currentQuestion].answerOptions.map((answerOption,i)=>(
{/*console.log(item.id)}/>*/}
{
手柄旋转单击(answerOption.isCorrect);
设置计数(1);
//setFavorite(真);
(i);
handleClick(i);
}}>
{answerOption.answerText}
))}
所以我想得到帮助的是制作一个钩子,根据答案是否正确,将按下的框/按钮的颜色更改为绿色或红色。我很确定我能想出如何表达正确的颜色

谢谢!
请注意

您可以尝试执行下一个功能:

const [color, setColor] = useState("")
const changeColor = () => {
    clicked ? setColor("yellow") : setColor("red")
}
在风格上,你会这样说:

style={{color: {color} }}

如果使用React Native 0.63.x,则可以使用组件

从'react native'导入{Pressable};
{
手柄旋转单击(answerOption.isCorrect);
设置计数(1);
//setFavorite(真);
(i);
handleClick(i);
}}
>
{({pressed})=>(
{answerOption.answerText}
)}
;
style={{color: {color} }}